簡體   English   中英

如何檢測列表視圖的特定項目到達屏幕頂部?

[英]How can I detect specific item of listview reach the top of the screen?

我想要的是,當我滾動(例如Title2)到頂部時, 大的Title將根據那時頂部的標題(Title2)進行更改。

大標題只是ListView上方的LinearLayout,而Listview中的小標題是List的項。 因此,我有一個想法是檢測特定項目是否到達頂部,但我不知道如何進行。 請幫我!

在此處輸入圖片說明

首先將AbsListView.OnScrollListener設置為ListView。 然后使用AdapterView.getFirstVisiblePosition()獲取第一個顯示的項目。

public class MainActivity extends Activity implements AbsListView.OnScrollListener {
    private static final String TAG = "MainActivity";

    private ListView mList;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mList = (ListView) findViewById(R.id.list);
        mList.setAdapter(new MyListAdapter(50));
        mList.setOnScrollListener(this);
    }

    @Override
    public void onScrollStateChanged(AbsListView view, int scrollState) {

    }

    @Override
    public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount,
            int totalItemCount) {
        // This is the position within the adapter's data set
        // for the first item displayed on screen.
        int firstPosition = mList.getFirstVisiblePosition();
        // Determine whether change title or not

    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM