如何将动态创建的操作栏设置为底部?

时间:2013-07-22 11:06:00

标签: java android actionbarsherlock android-actionbar android-tabs

要创建导航栏,我已动态创建操作栏:

public void onCreate(Bundle savedInstanceState) {
    ActionBar actionBar = getActionBar();
}

逐个添加标签:

    // Create first Tab
    tab = actionBar.newTab().setTabListener(new FragmentsTab1());
    // Create your own custom icon
    tab.setIcon(R.drawable.tab1_hdpi);
    actionBar.addTab(tab);

问题是,操作栏默认位于顶部。我怎么把它放在底部?我发现layout_below可能适合这种情况。但是,由于它是动态生成的,我怎么知道它的ID?非常感谢。

编辑:

添加分割选项后,它不会进行任何更改,是否由于我的动作栏是动态生成的?

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:uiOptions="splitActionBarWhenNarrow"
package="com.example.tabtest"
android:versionCode="1"
android:versionName="1.0" >

       <activity
        android:name="com.example.tabtest.MainActivity"
        android:uiOptions="splitActionBarWhenNarrow"
        android:label="@string/app_name" >

3 个答案:

答案 0 :(得分:1)

将此添加到Minifest中的活动代码

 uiOptions="splitActionBarWhenNarrow"

答案 1 :(得分:0)

你还没有真正回答OP的问题..我正在寻找一个答案,因为如果我使用此代码来自定义视图,看起来自定义栏总是位于顶部,默认菜单栏位于底部:

            ActionBar actionBar = getActionBar();
    actionBar.setDisplayShowHomeEnabled(false);
    // displaying custom ActionBar
    View mActionBarView = getLayoutInflater().inflate(R.layout.custom,
            null);
    actionBar.setCustomView(mActionBarView);
    actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);

:(

答案 2 :(得分:0)

使用Android 5.0 API时,不推荐使用uiOptions="splitActionBarWhenNarrow"。不幸的是,目前还没有很好的记录。有关详细信息,请阅读本文。

http://commonsware.com/blog/2014/11/18/android-5p0-deprecation-splitactionbarwhennarrow.html