android 中的 TabLayout 类为您提供了一个 TabItem,可以让您指定文本和图标。是否可以将自定义视图用作 TabItem?
我的标签看起来像这样
如您所见,除了图标和文本标签外,我还有一个通知符号(黄色圆圈内的数字)。我怎样才能制作这样的标签?
原文由 Denny George 发布,翻译遵循 CC BY-SA 4.0 许可协议
android 中的 TabLayout 类为您提供了一个 TabItem,可以让您指定文本和图标。是否可以将自定义视图用作 TabItem?
我的标签看起来像这样
如您所见,除了图标和文本标签外,我还有一个通知符号(黄色圆圈内的数字)。我怎样才能制作这样的标签?
原文由 Denny George 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以为每个选项卡项使用任何布局。首先像这样将 TabItems 添加到 TabLayout; (我的布局每个选项卡有 2 个文本视图和 1 个图像)
<com.google.android.material.tabs.TabLayout
android:id="@+id/tabLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.tabs.TabItem
android:id="@+id/ti_payroll_tab_tab1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout="@layout/your_custom_layout" />
<com.google.android.material.tabs.TabItem
android:id="@+id/ti_payroll_tab_tab2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout="@layout/your_custom_layout" />
</com.google.android.material.tabs.TabLayout>
然后您必须在自定义布局中找到并设置视图。
TabLayout.Tab tab1 = tabLayout.getTabAt(0);
tvTab1Title = tab1.getCustomView().findViewById(R.id.txt_payroll_tab_title);
tvTab1Value = tab1.getCustomView().findViewById(R.id.txt_payroll_tab_value);
ivTab1 = tab1.getCustomView().findViewById(R.id.img_payroll_tab_image);
原文由 Özer Özcan 发布,翻译遵循 CC BY-SA 4.0 许可协议
3 回答1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
1 回答891 阅读✓ 已解决
2 回答1k 阅读
2 回答942 阅读
1 回答908 阅读
2 回答754 阅读
在某些情况下,我们可能希望为每个选项卡应用自定义 XML 布局,而不是默认选项卡视图。为此,在将滑动选项卡附加到寻呼机后,遍历所有 TabLayout.Tabs:
接下来,我们将 getTabView(position) 方法添加到 SampleFragmentPagerAdapter 类:
有了它,您可以为适配器中的每个页面设置任何自定义选项卡内容。
资源