problema showDialog dentro da atividade com guias
-
14-11-2019 - |
Pergunta
Eu tenho um tabhost com 2 abas dentro da minha atividade principal, para a 2ª aba adicionei uma intenção de visualização de lista como conteúdo.Tudo está funcionando bem.Agora eu substituí onCreateDialog()
método na visualização de lista (2ª aba), quando fiz uma chamada para showDialog(MY_DIALOG);
método onCreateDialog()
está sendo chamado, mas estou recebendo um aviso no LogCat como
"WARN/InputManagerService(58): Window already focused, ignoring
focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@44ee6948"
Alguém pode me ajudar como mostrar a caixa de diálogo dentro da atividade do tabhost.
//editar
protected Dialog onCreateDialog(int id) {
Log.v(Constants.LOGTAG, " " +CLASSTAG+ " onCreateDialog(): +++ START +++");
AlertDialog.Builder builder = new AlertDialog.Builder(this);
switch (id) {
case DIALOG_MY_TYPES: {
Log.v(Constants.LOGTAG, " " +CLASSTAG+ " onCreateDialog(): DIALOG_MY_TYPES");
CharSequence[] items = {"option1", "option2", "option3"};
builder.setTitle("Select").setItems(items,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
Log.d(CLASSTAG, "item selected = " + item);
dialog.cancel();
}
}).setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Log.d(Constants.LOGTAG, " "+CLASSTAG+" Cancel button is clicked");
dialog.cancel();
}
});
}
}//switch
alert = builder.create();
Log.v(Constants.LOGTAG, " " +CLASSTAG+ " onCreateDialog(): +++ END +++");
return super.onCreateDialog(id);
}
Desde já, obrigado.-Nehatha
Solução
Mudar return super.onCreateDialog(id);
para return alert;
.Presumo que alguma outra parte da sua atividade esteja chamando showDialog(int).Caso contrário, você desejará fazer isso ou chamar o método show no Dialog retornado de onCreateDialog(id).