어댑터의 첫 번째 요소를 건너 뛰고 ListView를 스크롤하면 이전 항목이 새 항목 (첫 번째 항목 포함)으로 전환됩니다. 예 :
final List<String> items = new ArrayList<String>();
List<String> itemsFirstSkipped = items.subList(1, items.size()-1);
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, android.R.id.text1,
itemsFirstSkipped);
listView.setAdapter(adapter);
listView.setOnScrollListener(new AbsListView.OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
// Make sure at least 1 item is scrolled
if (firstVisibleItem>0) {
adapter.clear();
adapter.addAll(items);
// notifyDataSetChanged is called by default
}
}
});
'목록 항목 높이 합계'가 '목록보기'높이보다 작은 경우 어떻게 스크롤 할 수 있습니까? 이를 위해 대체 논리를 이해하거나 하나의 높이보다 높이를 낮추어야합니다. 나중에 – Panther
보다 먼저 선호하는 항목을 머리글로 넣은 다음 머리글 높이를 늘리거나 줄일 수 있습니다. – VinceStyling