我想删除出现在标签栏底部的默认行。我尝试了以下操作:
android:tabStripEnabled="false"
tabHost.getTabWidget.setStripEnabled(false);
还尝试按照此建议在 LinearLayout 中进行包装还尝试按照此问题
如何删除该行?
我使用自定义视图从标签栏中删除行。
选项卡视图的自定义布局:
<ImageView
android:id="@+id/tab_icon"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_gravity="center"
android:contentDescription="@string/tab_desc"
android:gravity="center" />
</LinearLayout>
设置标签视图:
private void setUpTabs() {
TabSpec spec0 = tabHost.newTabSpec("Tab");
spec0.setContent(R.id.tab_list);
spec0.setIndicator(tabView(R.drawable.image));
tabHost.addTab(spec0);
}
// Return view for tab
private View tabView(int drawableId) {
View view = LayoutInflater.from(this).inflate(R.layout.tab_image,
tabHost.getTabWidget(), false);
ImageView imageView = (ImageView) view.findViewById(R.id.tab_icon);
imageView.setImageResource(drawableId);
return view;
}
我使用删除它
// Create Child Tab1
mTabHost.addTab(mTabHost.newTabSpec("child1").setIndicator("your text",getResources().getDrawable(R.drawable.your_image)),
yourclass.class, null);
mTabHost.getTabWidget().getChildAt(0).setBackgroundColor(getResources().getColor(R.color.your background color));
mTabHost.getTabWidget().getChildAt(0).setBackgroundResource(R.drawable.your_image);
我设置了背景颜色,然后使用蓝线上方的代码设置了选项卡上的图像自动消失了,希望对您有所帮助。
使用此代码并从 tabhost 底部删除行
android:tabStripEnabled="true"
tabHost.getTabWidget.setStripEnabled(true);
在 TabLayout 中使用此属性
app:tabIndicatorColor="@android:color/transparent"
完整示例:
<com.google.android.material.tabs.TabLayout
android:id="@+id/tabLayout"
android:layout_width="match_parent"
android:layout_height="@dimen/_27sdp"
android:layout_marginLeft="@dimen/_5sdp"
android:layout_marginTop="@dimen/_10sdp"
android:layout_marginRight="@dimen/_5sdp"
android:background="@drawable/blue_button"
app:tabIndicatorColor="@android:color/transparent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/challengeType"
app:tabGravity="fill"
>