Intereting Posts
Увеличьте продолжительность непрерывного просмотра зрителя (дубликат) Почему класс BuildConfig использует Boolean.parseBoolean () вместо буквенных значений? BottomSheetDialog / BottomSheetDialogFragment – что использовать и как? Правильны ли пользовательские интерфейсы дизайна значков все еще действительны? Как проверить доступность пространства на внешнем хранилище? Java.lang.IllegalStateException: ViewPager не был связан (с использованием индикатора JakeWharton ViewPager) Android – используйте внешний профиль в панели уведомлений, например Facebook Почему мои файлы активов не обновляются? Android: обработайте обратный вызов OAuth с помощью фильтра намерения Как включить функцию прокрутки для линейной компоновки в android? Рисование зеркальных растровых изображений в android Получение следующего значения AUTO_INCREMENT базы данных SQLite Android-приложение с CSS Как изменить цвет текста элемента ListView? Возможно ли интегрировать Dagger и AspectJ в проекте Android Studio?

IllegalArgumentException Недопустимый тип элемента полезной нагрузки – с помощью ActionBarCompat

Logcat: http://crashes.to/s/72388b92dd7

Я использую action bar compat, поэтому я не могу переопределить 'onMenuItemSelected', потому что это окончательный метод. Похоже, только с некоторыми людьми тоже?

Я вернул true в 'onOptionsItemSelected', но он не помог, а пока представил отчет об ошибке, надеясь, что кто-то это увидит.

@Override public boolean onOptionsItemSelected(MenuItem item) { if (mDrawerToggle.onOptionsItemSelected(item)) { return true; } switch (item.getItemId()) { case R.id.menu_add_user: Intent intent = new Intent(this, Add_User.class); startActivity(intent); return true; case R.id.menu_about: buildAboutDialog(); return true; case R.id.menu_chat: return true; case R.id.menu_feedback: buildFeedbackDialog("a"); return true; case R.id.menu_show_images: if(appPrefs.getBoolean("showImages", false) == true){ appPrefs.saveBoolean("showImages", false); MenuShowImages.setTitle("Hide images"); MenuShowImages.setIcon(R.drawable.navigation_cancel); } else { appPrefs.saveBoolean("showImages", true); MenuShowImages.setTitle("Show images"); MenuShowImages.setIcon(R.drawable.navigation_accept); } Intent intentab = getIntent(); overridePendingTransition(0, 0); intentab.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); finish(); overridePendingTransition(0, 0); startActivity(intentab); return true; case R.id.menu_news: Intent intent_news = new Intent(this, NewsActivity.class); startActivity(intent_news); return true; case R.id.menu_horny: if(appPrefs.getBoolean("Adult", false) == true){ Hornyitem.setTitle("Filter Normal"); } else { Hornyitem.setTitle("Filter Adult"); } Intent intentaa = getIntent(); overridePendingTransition(0, 0); intentaa.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); finish(); overridePendingTransition(0, 0); startActivity(intentaa); return true; } return true; } 

Menu.xml:

 <menu xmlns:yourapp="http://schemas.android.com/apk/res-auto" xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/menu_add_user" android:orderInCategory="0" yourapp:showAsAction="ifRoom" android:icon="@drawable/social_add_person" android:title="@string/menu_add_user"/> <item android:id="@+id/menu_overflow" android:icon="@drawable/ic_menu_moreoverflow_normal_holo_dark" yourapp:showAsAction="always" android:orderInCategory="1" android:title="Show menu"> <menu> <item android:id="@+id/menu_about" android:icon="@drawable/action_about" yourapp:showAsAction="ifRoom" android:title="@string/menu_help" android:orderInCategory="1"/> <item android:id="@+id/menu_feedback" android:icon="@drawable/social_chat" yourapp:showAsAction="ifRoom" android:title="Request feature" android:orderInCategory="1" android:visible="false"/> <item android:id="@+id/menu_show_images" android:icon="@drawable/navigation_accept" yourapp:showAsAction="ifRoom" android:title="@string/show_images" android:orderInCategory="1"/> <item android:id="@+id/menu_noads" android:icon="@drawable/device_access_accounts" yourapp:showAsAction="ifRoom" android:title="Remove ads" android:orderInCategory="1" android:visible="false"/> <item android:id="@+id/menu_news" android:icon="@drawable/location_web_site" yourapp:showAsAction="ifRoom" android:title="@string/menu_news" android:orderInCategory="1" android:visible="false"/> <item android:id="@+id/menu_chat" android:icon="@drawable/location_web_site" yourapp:showAsAction="ifRoom" android:title="Chatroom" android:orderInCategory="1" android:visible="false"/> </menu> </item> </menu> 

Строки:

  <string name="title_activity_news">BroakenMedia News</string> <string name="title_activity_guide">User Guide</string> <string name="title_activity_details">User Details</string> <string name="title_activity_change_background">Change Background</string> <string name="action_settings">Settings</string> <string name="hide_images">Hide images</string> <string name="show_images">Show images</string> <string name="filter_adult_18">Filter Adult (18+)</string> <string name="filter_normal">Filter Normal</string> <string name="dialog_about">About</string> <string name="action_bar_title_norm">Users</string> <string name="menu_news">News</string> <string name="menu_help">Help</string> <string name="menu_add_user">Add sser</string> 

Разрешение панели действий:

 String mystring = getString(R.string.action_bar_title_norm); SpannableString s = new SpannableString(mystring); s.setSpan(new TypefaceSpan(this, "cubano"), 0, s.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); actionBar.setTitle(s); 

Solutions Collecting From Web of "IllegalArgumentException Недопустимый тип элемента полезной нагрузки – с помощью ActionBarCompat"

Для меня это исключение произошло только для пользовательского шрифта SpannableString в заголовке ActionBar. Это происходит только в устройствах LG. Таким образом, я кодирую это,

 public static void setActionBarTitle(ActionBarActivity activity, String title) { SpannableString spannableTitle = new SpannableString(title); spannableTitle.setSpan(new TypefaceSpan(activity, "CustomFont.ttf"), 0, title.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); ActionBar actionBar = activity.getSupportActionBar(); actionBar.setTitle(isLGDevice() ? title : spannableTitle); } public static boolean isLGDevice() { return (Build.MANUFACTURER.contains("LG") || Build.MODEL.contains("LG")); }