Tôi có một danh sách tùy chỉnhXem trong đó có một tiêu đề được ghim và số lượng lượt xem "đẩy lên" có thể được đẩy lên và ẩn phía trên chế độ xem danh sách.Chế độ xem danh sách tùy chỉnh với tiêu đề được ghim, khiến Jank khi đặt đệm
Tôi có hình ảnh đính kèm để giải thích chúng. Xin lỗi vì "kiểm duyệt đen", chỉ để ẩn biểu trưng của khách hàng, v.v.
Vấn đề của tôi là nếu tôi thêm đệm vào chế độ xem Tiêu đề được ghim, tôi sẽ nhận được các mục listview nổi phía sau nó.
Chế độ xem tiêu đề được ghim, được triển khai với cùng kỹ thuật như bạn sẽ tìm thấy nếu bạn tìm kiếm PinnedHeaderListView, tức là chế độ xem tĩnh và Tiêu đề trong chế độ xem danh sách.
Tôi đã tìm thấy một cách để bật đệm, và đó là bằng cách áp dụng cùng một phần đệm làm tiêu đề được ghim vào danh sách thực tếView, nhưng chỉ khi tiêu đề tĩnh hiển thị.
Tuy nhiên, việc gọi setPadding gây ra một Jank khá rõ ràng mà tôi muốn xóa. Có ai có ý tưởng làm thế nào để loại bỏ jank này?
Tôi có một ứng dụng đơn giản với chế độ xem đơn giản và dữ liệu giả, không hiển thị jank này, vì vậy có thể số lượng jank phụ thuộc vào độ phức tạp của bố cục ô.
private void updateIfShouldShowStaticHeaderView() {
//unfortunately setting the padding of the listView causes JANK.
//any ideas?
int bottomOfFloatingHeader = floatingHeader.getBottom();
if (bottomOfFloatingHeader < mHeaderViewHeight) {
staticHeaderViewIsVisible = true;
staticHeader.setVisibility(View.VISIBLE);
//need to set padding of listView to avoid having list-view items float behind my padded static header
setPadding(0, staticHeader.getPaddingTop(), 0, getPaddingBottom());
} else {
staticHeaderViewIsVisible = false;
staticHeader.setVisibility(View.INVISIBLE);
//need to set padding of listView to avoid having list-view items float behind my padded static header
setPadding(0, 0, 0, getPaddingBottom());
}
}
Đầu tiên đây là hình ảnh hiển thị tiêu đề đẩy lên
Dưới đây là một hình ảnh cho thấy cách điều được rút ra phía sau xem đệm gắn tĩnh. Điều đáng chú ý là nó hoạt động như có ý định nếu tôi điều chỉnh phần đệm của listView, nhưng tôi sẽ nhận được Jank (chậm lại), tại thời điểm nó bật/tắt chế độ xem tiêu đề tĩnh.
+1 cho hình ảnh rất đẹp, tác phẩm nghệ thuật mát mẻ :) –
plz nó nằm ngoài câu hỏi của bạn, nhưng bạn sẽ cho tôi biết làm thế nào u tổ chức listview và bố trí ứng dụng của bạn? – Angelika