如何在操作栏上添加按钮?

时间:2014-01-31 14:58:36

标签: android android-actionbar

我尝试通过查看各种指南和stackOverflow主题来添加它,但它们没有帮助。我会按照各种指南说的做一切,但我仍然无法在操作栏中获取设置图标。 MainActivity.class:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    ActionBar actionBar = getSupportActionBar();

    actionBar.setDisplayHomeAsUpEnabled(true);

    if (savedInstanceState == null) {
        getSupportFragmentManager().beginTransaction()
                .add(R.id.container, new PlaceholderFragment())
                .commit();
    }
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.entry_test, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item){
    Intent myIntent = new Intent(getApplicationContext(),MainActivity.class);
    startActivityForResult(myIntent, 0);
    return true;
}

entry_test.xml(这是图标所在的位置):

    <menu xmlns:android="http://schemas.android.com/apk/res/android" >
        <item
            android:id="@+id/action_cart"
            android:icon="@drawable/ic_action_settings"
            android:orderInCategory="100"
            android:showAsAction="always"
            android:title="Settings"
/>

</menu>

图标不会显示在操作栏中,当按下“更多”按钮(或其他任何名称)时,会在底部显示一个按钮,说明设置(标题)。而已。 我做错了什么?

1 个答案:

答案 0 :(得分:7)

由于您通过支持库使用ActionBar,请尝试以下操作:

<menu xmlns:android="http://schemas.android.com/apk/res/android" 
      xmlns:yourapp="http://schemas.android.com/apk/res-auto">

    <item
        android:id="@+id/action_cart"
        android:icon="@drawable/ic_action_settings"
        android:orderInCategory="100"
        android:showAsAction="always"
        yourapp:showAsAction="always"
        android:title="Settings" />

</menu>