工具栏上添加的操作按钮未显示

时间:2016-01-28 15:40:56

标签: java android

所以我最近尝试在工具栏上的溢出图标旁边添加另一个操作按钮:

enter image description here

但是通过遵循添加操作按钮的教程,我无法在工具栏上显示它。

这是我的menu / menu_notify.xml:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context="com.example.jovie.canteen.MenuNotify">
    <item
        android:id="@+id/action_notify"
        android:icon="@drawable/ic_notifications_black_24px"
        android:title="@string/action_notify"
        app:showAsAction="always" />
</menu>

我将我假设的新操作按钮与我的主类中的MenuNotify分开,不确定这是否是在工具栏上添加新操作按钮的正确方法。

MenuNotify.java:

package com.example.jovie.canteen;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.view.Menu;
import android.view.MenuItem;

/**
 * Created by Jovie on 1/28/2016.
 */
public class MenuNotify extends AppCompatActivity {

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_notify, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        switch (item.getItemId()) {
            //noinspection SimplifiableIfStatement
            case R.id.action_notify:
                startActivity(new Intent(this, Home.class));
                return true;
            default:
                return super.onOptionsItemSelected(item);
        }
    }
}

顺便说一句,我的过滤器图标按钮在我的主要课程中。

编辑: 感谢g2o的帮助!

enter image description here

1 个答案:

答案 0 :(得分:1)

  

我将我假设的新操作按钮与我的主类中的MenuNotify分开,不确定这是否是在工具栏上添加新操作按钮的正确方法。

无需创建新类来添加新操作按钮。 只需添加

<item
    android:id="@+id/action_notify"
    android:icon="@drawable/ic_notifications_black_24px"
    android:title="@string/action_notify"
    app:showAsAction="always" />

到menu / main.xml并添加

   case R.id.action_notify:
            startActivity(new Intent(this, Home.class));
            return true;

到您的Main类onOptionsItemSelected方法的开关