«Нет клавиатуры для id 0» – что это значит?

Каждый раз, когда открывается опция Optionsmenu (вызывается onCreateOptionsMenu (..)), я получаю следующие предупреждения:

«Нет клавиатуры для id 0»

а также

«Использование ключевого ключа по умолчанию: /system/usr/keychars/qwerty.kcm.bin"

Я не мог понять, что они означают, кто-нибудь знает? Мне не понравился этот ответ .

Вот простой код, который я использую:

@Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); getMenuInflater().inflate(R.menu.optmenu_start, menu); return true; } 

И optmenu_start.xml:

 <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/optmenu_prefs" android:title="@string/optmenu_prefs" android:icon="@drawable/icon_menu_prefs" /> <item android:id="@+id/optmenu_help" android:title="@string/optmenu_help" android:icon="@drawable/icon_menu_help" /> </menu> 

Solutions Collecting From Web of "«Нет клавиатуры для id 0» – что это значит?"

Ответ Google

«Журнал является нормальным, это происходит в первый раз, когда ключевая карта необходима для устройства в процессе».

http://groups.google.com/group/android-developers/browse_thread/thread/477caf755085b108

Поэтому, если вы начали Activity2 перед Activity1, вы увидите предупреждение в Activity2, а не Activity1!

Как я уже сказал, я думаю, что многие разработчики получают это сообщение, и это просто предупреждение, а не ошибка; Его можно игнорировать.

Как сказал @Blundell, это нормально. Но он всегда потребляет первое событие KeyPressed. Наконец, я добавляю это в init:

 setFocusableInTouchMode(true); 

Я не знаю почему, но это предупреждение никогда больше не раздражает меня.