我想只在标签栏中放置文字,没有图片......我想在标签栏中水平和垂直居中。正好在中心。
答案 0 :(得分:32)
如果有人仍然对简单的解决方案感兴趣而没有创建自己的布局和样式:
使用下一个代码居中并在选项卡中包装文本:
int tabCount = tabHost.getTabWidget().getTabCount();
for (int i = 0; i < tabCount; i++) {
final View view = tabHost.getTabWidget().getChildTabViewAt(i);
if ( view != null ) {
// reduce height of the tab
view.getLayoutParams().height *= 0.66;
// get title text view
final View textView = view.findViewById(android.R.id.title);
if ( textView instanceof TextView ) {
// just in case check the type
// center text
((TextView) textView).setGravity(Gravity.CENTER);
// wrap text
((TextView) textView).setSingleLine(false);
// explicitly set layout parameters
textView.getLayoutParams().height = ViewGroup.LayoutParams.FILL_PARENT;
textView.getLayoutParams().width = ViewGroup.LayoutParams.WRAP_CONTENT;
}
}
}
答案 1 :(得分:2)
您可以将其添加到xml布局android:gravity="center"
或android:layout_gravity="center"
答案 2 :(得分:0)
试试这个对你有所帮助!
<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/tabhost"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="1dp" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="60dp"
android:layout_alignParentBottom="true" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="1dp" >
</FrameLayout>
答案 3 :(得分:0)
<android.support.design.widget.TabLayout
app:tabMode="fixed"
app:tabContentStart="0dp"