使用ActionBar添加自定义标题栏

时间:2013-07-31 09:48:41

标签: android android-actionbar custom-titlebar

我想在FragmentActivity的子项中添加一个自定义标题栏,我有一个标题栏的布局,这就是我的方法。

    final ActionBar actionBar = getActionBar();

    actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
    actionBar.setCustomView(R.layout.title_bar);

    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
    actionBar.addTab(actionBar.newTab().setText("Tab0").setTabListener(this));
    actionBar.addTab(actionBar.newTab().setText("Tab1").setTabListener(this));
    actionBar.addTab(actionBar.newTab().setText("Tab2").setTabListener(this));

但问题是标题栏显示在标签下方。我想要导航标签上方的标题栏。

这是我的title_bar.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/titleBar"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/black" >

    <ImageView
        android:id="@+id/titleBarMenuBtn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/menu_btn" />


    <TextView
        android:id="@+id/titleBarLocation"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:layout_toRightOf="@+id/titleBarMenuBtn"
        android:text="Location"
        android:textColor="@color/white"
        android:textSize="16dip" />


    <TextView
        android:id="@+id/titleBarUpdateDate"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/titleBarMenuBtn"
        android:layout_alignLeft="@+id/titleBarLocation"
        android:layout_alignParentRight="true"
        android:text="Updated: 30/Jul/2013"
        android:textColor="@color/white" />

</RelativeLayout>

我看到了this帖子,但我的标签显示在标题栏上方。

由于

1 个答案:

答案 0 :(得分:1)

显示自定义布局上方的标签是预期的默认行为。虽然有办法改写这个。我找到了可能的解决方案:#1#2

更多的sherlock动作栏似乎表现得一样。