gpt4 book ai didi

android - 如何在 TabLayout 中获取 Tab 的 View ?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:05:46 25 4
gpt4 key购买 nike

我想在 TabLayout 中找到 Tab 的 View ,以便我可以将它传递给另一个函数。我不确定如何去寻找风景。myTabLayout.getTabAt(0).getCustomView() 返回 null。

如何获取 View ?

TabLayout tabLayout = (TabLayout) rootView.findViewById(R.id.tab_layout_main);
tabLayout.addTab(tabLayout.newTab().setText("Page1"));
tabLayout.addTab(tabLayout.newTab().setText("Page2"));

viewPager = (ViewPager) rootView.findViewById(R.id.pager_main);
pagerAdapter = new MyPagerAdapter(getActivity(), getChildFragmentManager(), tabLayout.getTabCount());
viewPager.setAdapter(pagerAdapter);

最佳答案

我最终使用以下方法获取选项卡 View 。我只是不确定它是否是最佳实践,或者它是否在所有 Android 版本中都可靠:

mainTab = ((ViewGroup) tabLayout.getChildAt(0)).getChildAt(desiredPosition);

查看源代码我们可以看到 tabLayout.getChildAt(0) 返回 SlidingTabStrip 这是一个扩展 LinearLayout 的内部类选项卡 View 。然后,您可以使用 .getChildAt(desiredPosition) 访问选项卡 View 。请注意,使用 getChildAt() 时不会检查边界,因此请确保调用正确的索引并检查 null 返回值。

关于android - 如何在 TabLayout 中获取 Tab 的 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33246307/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com