android – onOptionsItemSelected()在单击设置了actionLayout的菜单项时未调用

android – onOptionsItemSelected()在单击设置了actionLayout的菜单项时未调用,第1张

概述在我的 *** 作栏中,我已经定义了一个菜单项,可以通过以下代码显示文本“DONE”: menu.xml文件: <menu xmlns:android="http://schemas.android.com/apk/res/android" ><item android:id="@+id/action_register_text" android:actionLayout="@layout/a 在我的 *** 作栏中,我已经定义了一个菜单项,可以通过以下代码显示文本“DONE”:

menu.xml文件:

<menu xmlns:androID="http://schemas.androID.com/apk/res/androID" ><item androID:ID="@+ID/action_register_text"    androID:actionLayout="@layout/action_done_text"    androID:title="@string/action_done"    androID:showAsAction="always"/></menu>

action_done_text.xml:

<?xml version="1.0" enCoding="utf-8"?><FrameLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"androID:ID="@+ID/expand_activitIEs_button"androID:layout_height="match_parent"androID:layout_wIDth="wrap_content"androID:layout_gravity="center"androID:clickable="true"androID:focusable="true"androID:addStatesFromChildren="true"><TextVIEw    androID:ID="@+ID/register_action_bar_done"    androID:layout_wIDth="53dp"    androID:layout_height="35dp"    androID:layout_gravity="center"    androID:layout_marginRight="10dip"    androID:gravity="center"    androID:text="DONE" /></FrameLayout>

我在代码中正确实现了onCreateOptionsMenu,并且视图可以正确显示文本,但是当我点击DONE文本时,不会调用onoptionsItemSelected.对我来说,似乎无法识别click事件.

我想知道上面的方法是不是添加文本菜单项的好方法?

解决方法 使用此项,如 onOptionsItemSelected not called when using actionLayout (SherlockActionBar)所示
@OverrIDepublic boolean onCreateOptionsMenu(Menu menu) {    getSupportMenuInflater().inflate(R.menu.map_menu,menu);    for (int i = 0; i < menu.size(); i++) {        MenuItem item = menu.getItem(i);        if (item.getItemID() == R.ID.menu_more) {            itemChooser = item.getActionVIEw();            if (itemChooser != null) {                itemChooser.setonClickListener(this);            }        }    }    return super.onCreateOptionsMenu(menu);}
总结

以上是内存溢出为你收集整理的android – onOptionsItemSelected()在单击设置了actionLayout的菜单项时未调用全部内容,希望文章能够帮你解决android – onOptionsItemSelected()在单击设置了actionLayout的菜单项时未调用所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1141060.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存