Diálogo Android: eliminación de la barra de título



Answers

crear nuevo estilo en styles.xml

<style name="myDialog" parent="android:style/Theme.Dialog">
   <item name="android:windowNoTitle">true</item>
</style>

luego agrega esto a tu manifiesto:

 <activity android:name=".youractivity" android:theme="@style/myDialog"></activity>
Question

Tengo un comportamiento extraño, no puedo identificar la fuente de.

Tengo mi aplicación con el clásico

requestWindowFeature(Window.FEATURE_NO_TITLE);

para eliminar la barra de título / estado.

Luego creo un cuadro de diálogo para permitir al usuario ingresar información (nombre, etc.)

Con un teclado físico, no hay problema, pero cuando uso el teclado virtual tengo un comportamiento extraño:

cada vez que presiono una tecla en la placa de teclado virtual, la barra de título / estado reaparece empujando todo el diseño del teclado y luego desaparece de nuevo (al igual que la animación de cuando inicio la aplicación)

aquí hay un código:

        dialog = new Dialog(context);
        dialog.setContentView(R.layout.logindialog);
        dialog.setTitle("Login:");

        WindowManager.LayoutParams a = dialog.getWindow().getAttributes();

//      dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);

        a.dimAmount = 0;
        dialog.getWindow().setAttributes(a);

        dialog.setCancelable(true);
        dialog.getWindow().setLayout(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT);

y entonces

dialog.show();

Lo intenté

dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);

pero bloquea mi aplicación.

aquí está el xml

    <TextView android:id="@+id/LoginText"
        android:gravity="fill"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Login:">
    </TextView>         
    <EditText android:id="@+id/LoginEdit"
        android:layout_height="wrap_content"
        android:singleLine="true"
        android:text="jason"
        android:layout_width="200sp"/>
    <TextView android:id="@+id/PasswordText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Password:">
    </TextView>         
    <EditText android:id="@+id/PasswordEdit"
        android:layout_height="wrap_content"
        android:singleLine="true"
        android:text="welcome"
        android:layout_width="200sp"
        android:password="true"/>
<LinearLayout 
    android:id="@+id/test2"
    android:gravity="center_horizontal"
    android:orientation="horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
<Button android:id="@+id/LoginButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:text="Login" />
<Button android:id="@+id/CreateButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:text="Create" />
<Button android:id="@+id/CancelLogin"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:text="Cancel" />
</LinearLayout>/>




crea tu XML que se muestra en el diálogo aquí es activity_no_title_dialog

final Dialog dialog1 = new Dialog(context);
dialog1.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog1.setContentView(R.layout.activity_no_title_dialog);
dialog1.show();



Soy un principiante de Android y me encontré con esta pregunta tratando de deshacerse de una barra de título.

Estoy usando una actividad y la visualizo como un diálogo. Estaba hurgando con temas y encontré un poco útil de tematización predeterminada.

Aquí está el código de mi AndroidManifest.xml que estaba usando cuando se mostraba la barra de título:

<activity
    android:name=".AlertDialog"
    android:theme="@android:style/Theme.Holo.Dialog"

    >

</activity>

Aquí está el cambio que me dio el resultado deseado:

<activity
    android:name=".AlertDialog"
    android:theme="@android:style/Theme.Holo.Dialog.NoActionBar"

    >

</activity>

Como dije, todavía soy nuevo en Android, por lo que esto puede tener efectos secundarios indeseables, pero parece que me dio el resultado que quería, que era simplemente quitar la barra de título del diálogo.




Puede probar esta sencilla biblioteca emergente de diálogo de Android . Es muy simple de usar en su actividad.

Cuando se hace clic en el botón Enviar, intente seguir el código después de incluir la lib anterior en su código

Pop.on(this)
   .with()
   .title(R.string.title) //ignore if not needed
   .icon(R.drawable.icon) //ignore if not needed
   .cancelable(false) //ignore if not needed
   .layout(R.layout.custom_pop)
   .when(new Pop.Yah() {
       @Override
       public void clicked(DialogInterface dialog, View view) {
           Toast.makeText(getBaseContext(), "Yah button clicked", Toast.LENGTH_LONG).show();
       }
   }).show();

Agregue una línea en su gradle y listo.

dependencies {
    compile 'com.vistrav:pop:2.0'
}



Si está utilizando una vista personalizada, recuerde solicitar la función de ventana antes de agregar una vista de contenido como esta

dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(view);
dialog.show();



Links