[英]How do I listen for tab changes in TabLayout?
我在TabLayout
使用Fragment
類和ViewPager
來實現滑動選項卡。
我有 3 個 java 類:
(OneFragment 擴展 Fragment,TwoFragment 擴展 Fragment,ThreeFragment 擴展 Fragment 和 MainActivity 擴展 AppCompatActivity)
此外,我有所有這些類的 4 個不同的 xml 文件。 實際上,我是根據本教程設計的代碼
現在我想在用戶在選項卡之間切換時收聽。 例如,當用戶從第一個選項卡轉到第二個選項卡時,我希望執行以下操作:
Toast t = Toast.makeText(getActivity(),"You are exit from 1st tab", Toast.LENGTH_LONG);
t.show();
或者當用戶從 2 轉到第 1 個或第 3 個選項卡時,應執行以下操作:
Toast t = Toast.makeText(getActivity(),"You are exit from 2nd tab", Toast.LENGTH_LONG);
t.show();
有趣的是,我不能為任何回答TabLayout
,雖然有答案的幾十Tabhost
。
如何設計我的代碼以了解“哪個選項卡正在更改,上一個選項卡是什么?” 在TabLayout
?
注意:我使用過,試圖覆蓋onDestroyView()
, onDestroy()
和onHiddenChanged()
但我無法解決我的問題。 只有onDestroy()
有效,但當用戶退出應用程序時它也有效。
您需要為此實現TabLayout.OnTabSelectedListener
接口。
使用addOnTabSelectedListener
和removeOnTabSelectedListener
方法來做到這一點。 請注意, setOnTabSelectedListener
現在已棄用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.