У меня разные Activities
в моем приложении, и во всех них я не хочу Action Bar
. Я не могу найти, как отключить его. Я попытался найти атрибут, чтобы применить его к main_activity.xml
, но до сих пор я ничего не нашел. Может кто-нибудь мне помочь?Android Активность без ActionBar
ответ
Ха-ха, я застрял в этой точке некоторое время назад, так что я рад, что могу помочь вам с решением, который работал для меня по крайней мере :)
То, что вы хотите сделать, это определить новый стиль в пределах значений/styles.xml, так это выглядит, как этот
<resources>
<style name = "AppTheme" parent = "android:Theme.Holo.Light.DarkActionBar">
<!-- Customize your theme here. -->
</style>
<style name = "NoActionBar" parent = "@android:style/Theme.Holo.Light">
<item name = "android:windowActionBar">false</item>
<item name = "android:windowNoTitle">true</item>
</style>
</resources>
только стиль NoActionBar является для вас интересным. В конце концов вы должны установить как тема вашего приложения в AndroidManifest.xml, так это выглядит, как этот
<application
android:allowBackup = "true"
android:icon = "@drawable/ic_launcher"
android:label = "@string/app_name"
android:theme = "@style/NoActionBar" <!--This is the important line-->
>
<activity
[...]
Я надеюсь, что это помогает, если нет, то дайте мне знать.
Джона
Я попытаюсь показать, что это так просто, как я могу:
DECLARE ПОЛНОЭКРАННОЙ АКТИВНОСТЬ ANDROID MAINIFEST файл:
<activity
android:name=".GameActivity"
android:label="@string/title_activity_game"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
Сейчас в Android студии (если вы используете его) откройте файл Activity Activity (в моем примере activity_game.xml) в дизайнере и выберите тему (над мобильным телефоном в дизайнере нажмите кнопку с небольшим кружком), а затем выберите Темы Mainfest на левой стороне, а затем NoTitleBar.Fullscreen.
Надеюсь, это поможет!
Вы можете использовать android: theme = "@ style/Theme.AppCompat.Light.NoActionBar" для AppCompat. – atablash
Существует несколько способов сделать это.
1) Изменение темы в Android Manifest
Ниже элемента приложения, вы найдете тему тег. Заменить его с этим -
android:theme="@android:style/Theme.NoTitleBar"
Если вы используете AppCompat, используйте @android:style/Theme.AppCompat.NoActionBar
.
Это установит тему для всех видов деятельности. Если вам не нужна панель действий в конкретной актив- ности, а затем установить тему в контейнере деятельности, т.е.
<activity android:theme="@android:style/Theme.NoTitleBar" ...>
Вы также можете установить android:theme="@android:style/Theme.NoTitleBar"
тему в стилях и использовать его в дальнейшем.
2) Создание пользовательской темы
Добавить это в res/values/styles.xml
<style name="NoActionBar" parent="@android:style/Theme.Holo.Light">
<item name="windowActionBar">false</item>
<item name="android:windowNoTitle">true</item>
</style>
, а затем установить его в качестве темы вашей деятельности в манифесте:
<activity android:theme="@style/NoActionBar" ... />
3) Динамически Remov е Бар Действие
Поместите этот код в onCreate
методе перед установкой Просмотр содержимого -
getWindow().requestFeature(Window.FEATURE_ACTION_BAR);
getActionBar().hide();
Если вы используете использование библиотеки поддержки getSupportActionBar()
.
Это не помогло, вместо этого использовалось http://stackoverflow.com/questions/29790070/upgraded-to-appcompat-v22-1-0-and-now-getting-illegalargumentexception-appcompa. –
Это потому, что вы будете использовать appcompat. Спасибо, что указали это. Я внес изменения. – Confuse
Вы также можете изменить наследование от ActionBarActivity к Activity, как указано here.
UPDATE
Хорошим решением является here:
@Override
protected void onCreate(Bundle savedInstanceState) {
getWindow().requestFeature(Window.FEATURE_ACTION_BAR);
super.onCreate(savedInstanceState);
getSupportActionBar().hide();
setContentView(R.layout.activity_main);
}
Учитывая все вывешивает старые способы сокрытия ActionBar здесь правильный способ ее реализации в рамках стилей для библиотеки поддержки AppCompat. Который я настоятельно предлагаю двигаться к, если вы еще этого не сделали.
Просто удаления ActionBar
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
</style>
Если вы используете AppCompat библиотеки поддержки, это самый простой и рекомендуемый способ сокрытия ActionBar, чтобы сделать полный экран или начать реализацию на панели инструментов в ваших макетов.
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Your Toolbar Color-->
<item name="colorPrimary">@color/primary</item>
<!-- colorPrimaryDark is used for the status bar -->
<item name="colorPrimaryDark">@color/primary_dark</item>
<!-- colorAccent is used as the default value for colorControlActivated,
which is used to tint widgets -->
<item name="colorAccent">@color/accent</item>
<!-- You can also set colorControlNormal, colorControlActivated
colorControlHighlight, and colorSwitchThumbNormal. -->
</style>
Затем изменить вашей панель цвета
<android.support.v7.widget.Toolbar
android:id=”@+id/my_awesome_toolbar”
android:layout_height=”wrap_content”
android:layout_width=”match_parent”
android:minHeight=”?attr/actionBarSize”
android:background=”?attr/primary” />
Последнего примечание: Ваш класс активности должен распространяться AppCompatActivity
public class MainActivity extends AppCompatActivity {
<!--Activity Items -->
}
Спасибо, Евгений Х. Хорошо, я попробовал код менять цвета со случайными значениями. Он работает, поскольку он может работать без цветовых определений. Из-за NoActionBar. – CoolMind
@CoolMind Вы правы. Я просто добавил некоторые типичные атрибуты стилей с AppCompat. Я добавлю описания в ответ. –
Eugene, да, переход от ActionBar к ToolBar - хорошая идея. – CoolMind
Если вы используете AppCompat
, объявляет вашу деятельность в AndroidManifest.xml
в следующем:
<activity
android:name=".SomeActivity"
...
android:theme="@style/Theme.AppCompat.Light.NoActionBar" />
Если вы хотите большую часть своей деятельности, чтобы иметь панель действий вы, вероятно, унаследует базовую тему от заданного по умолчанию (это автоматически генерируется Android Studio по умолчанию):
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
А затем добавить специальный тема для вашего бара меньше активности:
<style name="AppTheme.NoTitle" parent="AppTheme">
<item name="windowNoTitle">true</item>
<item name="windowActionBar">false</item>
<item name="actionBarTheme">@null</item>
</style>
для меня, установки actionBarTheme в @null была решением.
Наконец настроить активность в вашем файле манифеста:
<activity ... android:theme="@style/AppTheme.NoTitle" ... >
создать новый стиль с любым именем, в моем случае «Theme.Alert.NoActionBar»
<style name="Theme.Alert.NoActionBar" parent="Theme.AppCompat.Dialog">
<item name="windowNoTitle">true</item>
<item name="windowActionBar">false</item>
</style>
установить его родителя, как " Theme.AppCompat.Dialog "как в приведенном выше коде
open AndoridManifest.xml и настройте действие, которое вы хотите показать как диалог оповещения, как этот
<activity
android:excludeFromRecents="true"
android:theme="@style/Theme.Alert.NoActionBar"
android:name=".activities.UserLoginActivity" />
В моем приложении я хочу показать свою активность в качестве логина оповещений, это коды, которые я использовал. Надеюсь, что это работает для вас!!!
- 1. Добавление ActionBar в Android-активность
- 2. Android название без ActionBar
- 3. Android Show Fragment За активность ActionBar
- 4. Android: приложение/активность теряет связь с ActionBar
- 5. Активность Android без GUI
- 6. android ActionBar Без расширения ActionBarActivity?
- 7. SearchView и активность Название в ActionBar
- 8. ActionBar Android
- 9. Android активность переключения без обновления
- 10. Активность Android без сбоев заголовка?
- 11. Вредоносная активность Icon не отображается в ActionBar
- 12. Android - Actionbar
- 13. Android новая активность Расширение класса ActionBar вместо класса Activity
- 14. Android - Различные ActionBar в зависимости от фрагмента в вкладке Активность
- 15. Android: WebView ActionBar (сотовый)?
- 16. Android-приложение ActionBar без навигационных элементов
- 17. android - ActionBar custom View без значка
- 18. Android SearchView - Переместить значок вправо (без ActionBar)
- 19. Android: значок изменения компонента SearchView (без ActionBar)
- 20. Назад Навигация в Android Без ActionBar
- 21. Android, как скрыть строку состояния без ActionBar
- 22. Android Actionbar
- 23. Android: ActionBar
- 24. Два actionBar в ту же активность
- 25. Кнопка поиска ActionBar, открывающая новую активность
- 26. Как отображать активность на вкладке ActionBar?
- 27. Пользовательский полупрозрачный Android ActionBar
- 28. Android скрывает пользовательский ActionBar
- 29. Android SearchView in ActionBar
- 30. Android ActionBar не отображает вкладки
спасибо, что мне очень помогли :) – Lutscha
Это не помогло, использовалось http://stackoverflow.com/questions/29790070/upgraded-to-appcompat-v22-1-0-and-now-getting- illegalargumentexception-appcompa вместо –