Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 2.3上按下菜单按钮时应用程序崩溃_Android_Android Optionsmenu - Fatal编程技术网

Android 2.3上按下菜单按钮时应用程序崩溃

Android 2.3上按下菜单按钮时应用程序崩溃,android,android-optionsmenu,Android,Android Optionsmenu,我的应用程序有一个操作栏(使用SupportV7lib),我想使用选项菜单添加一些操作。我按照这一点实现了工具栏和菜单,它们在视图加载时会按预期显示 我用来测试的设备最多可以在操作栏中安装2个按钮,而其余的按钮应该进入溢出菜单 如果我只在菜单中添加两项,当我按下菜单按钮时,不会发生任何事情,这很好,因为没有更多的选项显示 如果我添加第三个,或强制一个不显示在操作栏上(通过设置showAsAction=“never”),然后按下菜单按钮,我的应用程序将崩溃 Logcat未记录任何错误消息,但在我按

我的应用程序有一个操作栏(使用SupportV7lib),我想使用选项菜单添加一些操作。我按照这一点实现了工具栏和菜单,它们在视图加载时会按预期显示

我用来测试的设备最多可以在操作栏中安装2个按钮,而其余的按钮应该进入溢出菜单

如果我只在菜单中添加两项,当我按下菜单按钮时,不会发生任何事情,这很好,因为没有更多的选项显示

如果我添加第三个,或强制一个不显示在操作栏上(通过设置
showAsAction=“never”
),然后按下菜单按钮,我的应用程序将崩溃

Logcat未记录任何错误消息,但在我按下菜单按钮时显示以下警告:

W/KeyCharacterMap﹕ Can't open keycharmap file
W/KeyCharacterMap﹕ Error loading keycharmap file '/system/usr/keychars/ft5x0x_ts.kcm.bin'. hw.keyboards.65536.devname='ft5x0x_ts'
W/KeyCharacterMap﹕ Using default keymap: /system/usr/keychars/qwerty.kcm.bin
从应用程序初始化到崩溃时刻的完整日志:

无论哪个应用程序正在运行,每次我按下按钮时都会出现这些警告,所以我认为这是无关的。缺点是这是Logcat上的唯一输出

更新:我的测试设备运行Android 2.3,当我在上面运行时,应用程序正在崩溃。我在KitKat模拟器上进行了测试,它没有崩溃。 我还测试了姜饼模拟器,它也崩溃了。这样我就知道我的设备不是问题所在

menu.xml:

<?xml version="1.0" encoding="utf-8"?>

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:com.example.myapp="http://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/action_search"
        com.example.myapp:showAsAction="always"
        android:icon="@drawable/ic_launcher"
        android:title="Search" />
    <item
        android:id="@+id/menu_cart"
        com.example.myapp:showAsAction="always"
        android:icon="@drawable/ic_launcher"
        android:title="Cart" />
    <item
        android:id="@+id/menu_login"
        com.example.myapp:showAsAction="never"
        android:icon="@drawable/ic_launcher"
        android:title="Log in" />
</menu>
Logcat输出:


I/ActivityManager(277):为activity com.example.myapp/.MainActivity启动proc com.example.myapp:pid=13924 uid=10053 gids={1006,3003,1015}

W/KeyCharacterMap(13924):无法打开keycharmap文件
W/KeyCharacterMap(13924):加载keycharmap文件'/system/usr/keychars/ft5x0x\u ts.kcm.bin'时出错。hw.keyboards.65536.devname='ft5x0x\u'
W/KeyCharacterMap(13924):使用默认keymap:/system/usr/keychars/qwerty.kcm.bin

I/DEBUG(13893):构建指纹:“sprd/sprdroid_base/hsdroid:2.3.5/MocorDroid2.3.5/W12.20_P20.01:用户/测试密钥”

I/DEBUG(13893):pid:13924,tid:13924>>>com.example.myapp这里也有同样的问题。一切正常,突然停止了。在这个帖子上找到了答案


0.9.1 graddle PNG cruncher有问题。

自定义名称空间中的属性发生了什么变化?根据我提到的教程,由于我使用的是支持库,因此支持库中不存在属性
showaAction
,因此,我需要添加我的应用程序的命名空间/包名。您没有正确收集logcat。考虑使用命令行工具,以便找到应用程序启动时生成的实际消息,然后在其崩溃。@ ChrisStratton这里有一个完整的日志,我从DDMS抓取,从应用程序初始化直到崩溃。注意我在第152行的评论。正如我之前所说,没有错误,只有三个警告。只发生在姜饼上。不,这不是完整的logcat输出。而是被过滤了。不要使用DDMS,从命令行执行。当应用程序进程崩溃时,会生成一些消息,这些是您需要检查的。
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu items for use in the action bar
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.menu, menu);
    return super.onCreateOptionsMenu(menu);
}