最近想實現一個這樣的需求,用戶將FlatList
向上滑動是隱藏頂部導航欄,向下滑動的時候顯示頂部導航欄。
我的實現邏輯:首先要實現這個功能,需要知道用戶的手勢是向上滾動還是向下滾動,拿到實時的座標信息,那麼如何才能得到座標信息呢?首先想到的就是去查官方的API,然後發現FlatList的文檔中沒有onScroll
事件監聽,有點小懵逼。然後想ScrollView
與FlatList
是父子關係,去看看ScrollView
的API說明吧,果然在ScrollView
中發現了onScroll
的事件監聽,文檔介紹如下。
看完後發現並沒有關於回調函數的參數介紹,然後試着在回調函數中加了一個
event
的參數,打印試試看。看到打印的信息有是一臉懵逼了,不是我要的信息啊。
然後怎麼辦了,去翻翻
react native
的 Issues
吧,然後一頓猛搜,找到了一點線索,還有這種操作?(我感覺顛覆了我的程序觀 😂 )拿到這個信息就好實現我的功能了。
以上就是我使用
FlatList
中遇到的這個坑,希望能爲在react native坑之路上的小夥伴們填一個坑,畢竟還有很多坑等着我們去填,保持樂觀的態度最重要 😊 。