Android - ActionBar项目 - onClickListener

时间:2014-01-23 10:16:38

标签: android android-actionbar onclicklistener

我正在尝试为项目实现onClickListener,该项目是ActionBar的子菜单。无论我想做什么,结果都是一样的 - “不幸的是,应用程序停止了。”但是在编译期间没有错误。一切似乎都没问题,但事实并非如此。这里出了什么问题?谢谢你的帮助。

这是我的代码:

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        View view = (View) menu.findItem(R.id.delete).getActionView();
        view.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                // Execute when actionbar's item is touched
            }
        });
        return true;
    }

这是main.xml文件,其中创建了ActionBar及其项目

<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:id="@+id/action_settings"
        android:orderInCategory="100"
        android:showAsAction="always"
        android:title="@string/action_settings">
        <menu>
            <item 
                android:id="@+id/delete" 
                android:title="@string/delete" 
                android:showAsAction="always" 
                android:orderInCategory="200"/>
        </menu>
    </item>
</menu>

1 个答案:

答案 0 :(得分:0)

getActionView()返回有效对象(不是null),只有您拥有自定义操作视图(使用setActionView