如何在onScroll上获取ListView中顶级项目的ID?

时间:2017-08-03 03:04:34

标签: java android android-layout listview

我希望在Id时获得ListView的顶部位置项的onScroll()

我该如何编写代码?

public class Isi_Ayat extends AppCompatActivity implements AdapterView.OnItemClickListener {
    @RequiresApi(api = Build.VERSION_CODES.KITKAT)  

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.isi_ayat);

        listview....

        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) {
                Toast.makeText(Isi_Ayat.this, "test " + visibleItemCount, Toast.LENGTH_SHORT).show();

            }

        });
    }
}

1 个答案:

答案 0 :(得分:0)

假设最顶层是指最顶层的可见项目。

@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
    Toast.makeText(Isi_Ayat.this, "test " + visibleItemCount, Toast.LENGTH_SHORT).show();

    int id = ((LinearLayoutManager) listView.getLayoutManager()).findViewByPosition(firstVisibleItem).getId()

}

确保LayoutManager与您的列表视图使用的相同。因此,对于GridLayoutManager,请相应地进行更改。