Tenho um comportamento estranho e não consigo identificar a origem.
Eu tenho meu aplicativo com o clássico
requestWindowFeature(Window.FEATURE_NO_TITLE);
para remover a barra de título / status.
Em seguida, crio uma caixa de diálogo para permitir que o usuário insira informações (nome, etc)
Com um teclado físico, sem problemas, mas quando uso o teclado virtual, tenho um comportamento estranho:
cada vez que pressiono uma tecla no teclado virtual, a barra de título / status reaparece empurrando todo o layout do teclado e depois desaparece novamente (como a animação de quando eu inicio o aplicativo)
aqui está algum 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);
e depois
dialog.show();
eu tentei
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
mas ele trava meu aplicativo.
aqui está o 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>/>
Respostas:
usar,
fonte
getDialog().requestWindowFeature(Window.FEATURE_NO_TITLE);
para dentroonCreateView
.dialog.supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
crie um novo estilo em styles.xml
em seguida, adicione ao seu manifesto:
fonte
Todas as respostas acima não estão funcionando para mim para AppCompatDialog
Se você estiver usando AppCompatDialog, tente este
Observação importante: defina isso antes de chamar setContentView.
fonte
crie seu XML que é mostrado na caixa de diálogo aqui é activity_no_title_dialog
fonte
Você também pode definir o tema no arquivo de manifesto do Android para não exibir a barra de título.
Você acabou de definir o tema
android:theme="@android:style/Theme.Light.NoTitleBar"
na atividade em que não deseja exibir a barra de títuloExemplo:-
fonte
se você estiver usando uma visualização personalizada, lembre-se de solicitar o recurso de janela antes de adicionar visualização de conteúdo como esta
fonte
use o código abaixo antes de setcontentview: -
Nota: - o código acima deve ter que usar acima
dialog.setContentView(R.layout.custom_dialog);
Em XML use um tema
também styles.xml:
E depois:
fonte
Sou um novato no Android e me deparei com esta pergunta ao tentar se livrar de uma barra de título.
Estou usando uma atividade e exibindo-a como um diálogo. Eu estava mexendo nos temas e me deparei com uma parte útil do tema padrão.
Aqui está o código do meu
AndroidManifest.xml
que eu estava usando quando a barra de título estava sendo exibida:Esta é a mudança que me trouxe o resultado desejado:
Como eu disse, ainda sou novo no Android, então isso pode ter efeitos colaterais indesejáveis, mas parece ter me dado o resultado que eu queria, que era apenas remover a barra de título da caixa de diálogo.
fonte
Estou usando a próxima variante:
Atividade da minha caixa de diálogo personalizada:
activity_alert_dialogue.xml:
Manifesto:
Estilo:
fonte
Com a próxima variante, não tenho reação:
Então, tento usar a seguir:
Esta variante funciona muito bem.
fonte
Isso funcionou para mim.
fonte
Você pode tentar esta biblioteca pop-up de diálogo simples do Android . É muito simples de usar na sua atividade.
Quando o botão de envio é clicado, tente seguir o código após incluir a lib acima em seu código
Adicione uma linha em seu gradle e pronto
fonte
dialog1.requestWindowFeature (Window.FEATURE_NO_TITLE);
fonte