我已使用ViewPager
顯示少量片段,我的FragmentActivity
上也有TextView
。我需要更改TextView
中的文本,具體取決於ViewPager
中當前選擇哪個片段。我遇到的問題:ViewPager
有一些緩存機制,它在用戶真正可見之前實例化片段,例如當我在第三個頁面上選擇ViewPager
片段中的第二個頁面時也會創建。什麼是我不能確定裏面的片段是這個片段現在可見或它只是由ViewPager
創建,但不是真正可見的用戶。我tryed使用OnPageChangeListener
這一點,但它所做的更改是不可接受的慢,我(頁面滾動,然後我TextView
已經改變)
我真的需要:我需要確定哪些片段是目前可見ViewPager
,無論是從FragmentActivity
還是從Fragment
本身。我怎樣才能做到這一點?確定當前在ViewPager中可見的片段
8
A
回答
7
ViewPager.OnPageChangeListener
這裏是明顯的方法。正如你已經注意到,onPageSelected(int position)
不會被調用,直到頁面居中(如果你慢慢地通過觸摸滾動頁面,並保持)。
我真的需要:我需要確定哪個片段當前在ViewPager中可見,無論是從FragmentActivity還是從片段本身。我怎樣才能做到這一點?
首先,您還沒有定義「當前可見」。在ViewPager
中,可以在兩個頁面之間滑動時看到兩個頁面,那麼哪一個頁面在中間滑動時是「當前可見的」?我的假設是,你會考慮哪個頁面「更明顯」是「目前可見」。
說了這話,我會考慮使用onPageScrolled (int position, float positionOffset, int positionOffsetPixels)
。看起來positionOffset
可能能夠爲您提供所需的信息。我會用一些日誌語句來測試它,以查看返回的數據。
相關問題
- 1. 確定當前片段前的片段
- 2. 如何確定自定義視圖當前是否在ViewPager中可見
- 3. 獲取當前可見片段Android
- 4. 是否可以訪問ViewPager正在查看的當前片段?
- 5. ViewPager:定義片段本身是否被選中/可見
- 6. 如何在viewpager中獲取當前顯示的片段
- 7. 防止FloatingActionButton在CoordinatorLayout,ViewPager中變爲可見片段
- 8. 當viewpager中的片段對用戶可見時顯示工具提示
- 9. 片段當前不在FragmentManager中,同時通知viewpager
- 10. ViewPager disapear當片段移動
- 11. 從活動中獲取當前可見片段
- 12. 片段在ViewPager中的ActionBar
- 13. 家庭片段部分可見與當前片段的混合視圖android studio
- 14. 在ViewPager上可見片段時啓動動畫
- 15. 如何獲得片段對象在當前位置ViewPager
- 16. 在scrollview中滾動ViewPager中的一個片段與軟鍵盤可見
- 17. 在ViewPager中替換片段
- 18. Android viewpager片段
- 19. ViewPager片段
- 20. 查看Android中的viewpager和tablayout片段中的可見性檢查
- 21. ViewPager中的片段顯示
- 22. 片段內的ViewPager
- 23. 當前在RecyclerView中的可見項目
- 24. 確定當前屏幕是否有可見的導航欄
- 25. 活動ActionBar在片段中不可見
- 26. 如何在viewpager片段中託管viewpager的片段獲取活動上下文?
- 27. 在viewpager的片段中顯示地圖
- 28. 片段事務後片段在活動佈局中不可見。
- 29. android - ViewPager在片段活動
- 30. Android保留片段在ViewPager