我有一个很好的ActionBarSherlock设置,有三个标签。左侧和右侧标签设置为图标,中间标签是自定义布局。
在纵向模式下,这看起来很棒。选项卡很好地集中在操作栏中,并且与世界完美结合:
但是,在横向模式下,标签会向左刷新:
以下是我设置标签的方式:
Tab leftTab = mActionBar.newTab().setIcon(R.drawable.ic_action_login_black).setTabListener(tabListener);
mActionBar.addTab(leftTab);
Tab centerTab = mActionBar.newTab().setCustomView(R.layout.actionbar_logo).setTabListener(tabListener);
centerView = (RelativeLayout) centerTab.getCustomView();
mActionBar.addTab(centerTab, true);
Tab rightTab = mActionBar.newTab().setIcon(R.drawable.ic_action_video_black).setTabListener(tabListener);
mActionBar.addTab(rightTab);
这是我在中心选项卡中的自定义视图的XML:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="48dp"
android:clickable="false"
android:focusable="false"
android:focusableInTouchMode="false" >
<ImageView
android:id="@+id/my_logo"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/my_logo" />
</RelativeLayout>
如果重要,我正在使用minSdkVersion = 15。
我希望标签居中,就像它们处于纵向模式一样。这可能吗?
答案 0 :(得分:0)
在RelativeLayout的根目录中使用android:layout_gravity =“fill_horizontal”。这将导致相对布局实际扩展以填充操作栏,从而导致所有内容正确布局。