Не показано приложение с AppCompat
Я загружаю свое приложение в API7 с помощью AppCompat и имею проблему с панелью действий.
Когда я использую FragmentActivity
, панель действий отображается на моем телефоне (API18), но с ActionBarActivity
она отображается как опцияменю, нажимая клавишу меню.
В эмуляторе с API7 панель действий всегда отображается как меню настроек.
Любые идеи?
Ответы
Ответ 1
Используйте пространство имен совпадений для ваших пунктов меню следующим образом:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:compat="http://schemas.android.com/apk/res-auto" >
<item android:id="@+id/action_whatever"
android:icon="@drawable/ic_action_whatever"
android:title="@string/whatever"
compat:showAsAction="ifRoom" />
</menu>
Ответ 2
В связи с дубликатом, указывающим на этот пост, у меня возникли проблемы с тем, что мои кнопки отображаются как элементы действия, а не элементы переполнения, несмотря на то, что showAsAction установлен на always
. Мне удалось усилить его, расширив мою активность с помощью Activity
вместо ActionBarActivity
. Согласно этот ответ, это приемлемо, если вам не нужно поддерживать уровни api ниже 11.
...extends ActionBarActivity
:
![extends ActionBarActivity]()
...extends Activity
:
![enter image description here]()
Ответ 3
Я отлаживаю с Doogee Valencia Y100Pro, а меню "три маленьких квадрата" не видно, но когда я расширил свою MainActivity с помощью android.support.v7.app.ActionBarActivity
, я получу текстовое/знаковое меню в панели действий. Далее снимок экрана и menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_update"
android:icon="@drawable/ic_refresh"
android:title="@string/action_update"
app:showAsAction="always"/>
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
app:showAsAction="ifRoom"/>
</menu>