Как отключить панель действий навсегда

Я могу скрыть панель действий в сотах, используя этот код:

getActionBar().hide(); 

Но когда клавиатура открывается, а пользователь копирует-вставляет что-либо, панель действий отображается снова. Как я могу отключить панель действий навсегда?

Solutions Collecting From Web of "Как отключить панель действий навсегда"

Если вы используете Theme.Holo.Light и хотите использовать вариант Theme.Holo.Light.NoActionBar на устройствах до 3.2, вы можете добавить это в свои styles.xml :

 <style name="NoActionBar" parent="@android:style/Theme.Holo.Light"> <item name="android:windowActionBar">false</item> <item name="android:windowNoTitle">true</item> </style> 

А затем задайте его как тему своей деятельности:

 <activity android:theme="@style/NoActionBar" ... /> 

Установив тему активности в манифесте,

 <activity android:theme="@android:style/Theme.NoTitleBar.Fullscreen" .... > 
 <application . . android:theme="@android:style/Theme.Holo.Light.NoActionBar" . > 

Возможно, это поможет вам

С установленным по умолчанию Android Studio суперклассом Activity является ActionBarActivity и тогда ни одно из решений в других ответах не работает. Чтобы решить просто изменить суперкласс:

 public class xxxActivity extends ActionBarActivity{ 

чтобы:

 public class xxxActivity extends Activity { 

Я использую следующий код внутри моей функции onCreate:

 ActionBar actionBar = getSupportActionBar(); actionBar.hide(); 

Источник: https://developer.android.com/guide/topics/ui/actionbar.html

Лучший способ, который я нашел, который дает настраиваемые темы и не панель действий, заключается в создании SuperClass для всех действий в моем проекте и в его onCreate () вызывать следующую строку кода –

 this.requestWindowFeature(Window.FEATURE_NO_TITLE); 

Это всегда работает для меня. Единственная проблема в этом подходе – вы увидите панель действий на долю секунды при запуске приложения (а не на действие, полное приложение).

 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_my); getSupportActionBar().hide(); } 

Если вы хотите получить полный экран без actionBar и Title.

Добавьте его в style.xml

 <style name="AppTheme.NoActionBar" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="windowActionBar">false</item> <item name="windowNoTitle">true</item> <item name="android:windowFullscreen">true</item> </style> 

И используйте стиль в manifest.xml.

 android:theme="@style/AppTheme.NoActionBar" 

Не используйте тему Голо, и панель действий исчезнет. Этот код работает для меня на API 8+ с поддержкой lib v7:

 <style name="NoActionBar" parent="@style/Theme.AppCompat.Light"> <item name="android:windowNoTitle">true</item> </style> 

Задайте эту тему для своей деятельности:

 <activity android:theme="@style/NoActionBar" ... /> 

И в вашем классе активности.

Он работает, даже когда он расширяет ActionBarActivity.

Это быстрое решение.

Вы найдете styles.xml, и вы измените тему базового приложения на «Theme.AppCompat.NoActionBar», как показано ниже.

 <style name="AppTheme" parent="Theme.AppCompat.NoActionBar"> <!-- Customize your theme here. --> </style> 

Введите этот код в метод setContentView перед setContentView :

 requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 0); 

Убедитесь, что вы создали новую тему, изменив имя темы по умолчанию в styles.xml на:

  <style name="MyTheme" parent="android:Theme.Material.Light.NoActionBar"> 

И чем изменить тему из раскрывающегося main_activity.xml под вашим main_activity.xml до того, что вы назвали своей темой.

Ниже приведены шаги для скрытия панели действий:

  1. Откройте приложение / res / values ​​/ styles.xml.
  2. Ищите элемент стиля, который называется apptheme. Должен выглядеть так, как <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> .
  3. Теперь замените родителя на любую другую тему, содержащую «NoActionBar» в ее имени.

    а. Вы также можете проверить, как выглядит тема, перейдя на вкладку дизайна в файле activity_main.xml, а затем опробовать каждую тему, указанную в раскрывающемся списке темы в пользовательском интерфейсе.

  4. Если ваша MainActivity расширяет AppCompatActivity , убедитесь, что вы используете тему AppCompat.

Перейдите в styles.xml Измените это DarkActionBar на NoActionBar

 style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar> 

Еще одно интересное решение, в котором вы хотите сохранить ViewPager при удалении панели действий, – это иметь стиль как шоу

 <style name="AppTheme" parent="AppBaseTheme"> <item name="android:windowActionBarOverlay">true</item> <item name="android:actionBarStyle">@style/NoActionBarStyle</item> <item name="android:windowContentOverlay">@null</item> </style> <style name="NoActionBarStyle" parent="android:Widget.Holo.ActionBar"> <item name="android:backgroundSplit">@null</item> <item name="android:displayOptions"></item> </style> 

Таким образом, большинство приложений Dialer в android показывают ViewPager без панели действий.

Ссылка: https://github.com/CyanogenMod/android_packages_apps_Dialer

В функции onCreate добавьте следующий код

 ActionBar actionBar = getSupportActionBar(); actionBar.hide(); 

И просто импортируйте файл android.support.v7.app.ActionBar

Попробуй это в своем манифесте

  <activity android:name=".MainActivity" android:theme="@android:style/Theme.Holo.NoActionBar" android:label="@string/app_name" > 
  protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); android.support.v7.app.ActionBar actionBar = getSupportActionBar(); if (actionBar != null) { actionBar.hide(); } setContentView(R.layout.activity_main); 

Существует два способа отключить ActionBar в Android.

 requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); 

Я хотел бы опубликовать скорее подход дизайнера к этому, это будет держать дизайн отдельно от вашей бизнес-логики:

Шаг 1. Создайте новый стиль в (res-> values-> styles.xml): в основном это копия вашей общей схемы с разными родителями – parent = "Theme.AppCompat.Light.NoActionBar"

 <!-- custom application theme. --> <style name="MarkitTheme" parent="Theme.AppCompat.Light.NoActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimary</item> <item name="colorAccent">@color/colorAccent</item> <item name="android:windowNoTitle">true</item> </style> 

Шаг 2. В вашем AndroidManifest.xml добавьте эту тему в активную деятельность: например, я хочу, чтобы мое основное действие без панели действий добавило это, как показано ниже:

 <activity android:name=".MainActivity" android:theme="@style/MarkitTheme"> 

Это лучшее решение для меня после многих попыток.

Я использую это решение:

В манифесте, внутри вашего тега активности:

 android:label="@string/empty_string" 

И в strings.xml:

 <string name="empty_string">""</string> 

Таким образом вы сохраняете ActionBar (или панель инструментов) с заголовком, но когда Activity, если созданный заголовок, автоматически пуст.

Как ни странно, ни один из них не работал для меня, когда я работал над Nexus 7, работающим 4.4.2 (API 19). По большей части, по крайней мере, с последней версией Android Studio (1.2.1.1) после создания пустого приложения активности:

Android: тема = "@ стиль / AppTheme"

Находится в элементе приложения, а не в элементе активности. Если я удалил вышеуказанный код или попытался изменить его на:

Android: тема = "@ андроид: стиль / Theme.Holo.Light.NoActionBar"

Приложение не будет запускаться … если это происходит с вами, просто зайдите в свой файл styles.xml (res> values> styles.xml) и добавьте .NoTitleBar в конец родительского типа, например, этот блок:

 <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"></style> 

Никаких изменений в файле AndroidManifest не требуется.