android - style - AppCompatActivity como un diálogo sin título
alertdialog material design android (6)
Tengo una
Activity
heredada de
AppCompactActivity
.
en manifiesto para el tema del conjunto de actividades:
<style name="Theme.custom" parent="Theme.AppCompat.Light.Dialog">
<item name="android:windowNoTitle">true</item>
<item name="colorPrimary">@color/primary</item>
<item name="colorPrimaryDark">@color/primary_dark</item>
<item name="colorAccent">@color/accent</item>
<item name="colorButtonNormal">@color/accent</item>
<item name="android:buttonStyle">@style/ButtonStyle</item>
</style>
Cuando ejecuto actividad, se muestra como un cuadro de diálogo, ¡pero se muestra el título!
Intento
supportRequestWindowFeature(Window.FEATURE_NO_TITLE)
y
RequestWindowFeature(Window.FEATURE_NO_TITLE)
pero el título aún se muestra.
Por favor, hágamelo saber, ¿qué está mal?
Editar
Lo
android:windowNoTitle
, solo cambio
android:windowNoTitle
a
windowNoTitle
!
porque estoy usando AppCompactActvity!
AppCompatActivity es diferente de Activity y tiene sus propias características. Con el mismo propósito, simplemente puede usar:
supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
Puedes buscar la documentación here
Nota: Agregue esto antes de
setContentView()
para evitar el bloqueo.
Establecer debajo del estilo en su style.xml
<style name="customDialogTheme" parent="Theme.AppCompat.Light.Dialog">
<item name="windowNoTitle">true</item>
</style>
que establecer este tema en tu actividad
<activity
android:name=".yourDailogActivity"
android:configChanges="orientation"
**android:theme="@style/CheckoutDialogTheme"**
android:screenOrientation="portrait" />
No debe guardar nada sobre
<string name="app_name"></string>
.so cuando ejecute su actividad, se mostrará un cuadro de diálogo con "NO Title".
string.xml:
<resources>
<string name="app_name"></string>
<string name="hello_world">Hello world!</string>
<string name="action_settings">Settings</string>
</resources>
No debe guardar nada sobre el título de la actividad. si sigue estos pasos, el título de la actividad estará oculto.
style.xml:
</style>
<style name="MyTitledActivityDialogTheme" parent="Theme.AppCompat.Light.Dialog">
<item name="android:windowNoTitle">true</item>
<item name="windowActionBar">false</item>
</style>
manifiest.xml:
<activity
android:name="YouActivity"
android:theme="@style/MyTitledActivityDialogTheme" />
YourClass.java:
después de
setContentView(R.layout.xyz)
como este
setContentView(R.layout.xyz);
if (getSupportActionBar() != null)
getSupportActionBar().hide();
Si tiene
AppCompatActivity
, lo siguiente no funcionará
requestWindowFeature(Window.FEATURE_NO_TITLE);
La manera simple es configurarlo en el archivo
style.xml
.
<style name="mytheme" parent="Theme.AppCompat.Light.Dialog">
<item name="windowNoTitle">true</item>
</style>
Es
name="windowNoTitle"
, noname="android:windowNoTitle"
Si desea eliminarlo mediante programación, agregue lo siguiente en
onCreate()
getSupportActionBar().hide();
utilice la función de ventana de solicitud antes de
setContentView()
como se muestra a continuación
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.main);