2013-07-31 5 views
1

Voici la question, je veux créer une boîte de dialogue d'alerte personnalisée, avec 4 pièces,Android AlertDialog.Builder barre de titre personnalisée avec Modifier le texte

  1. Titre Bar
  2. partie en-tête (La plupart du temps, je l'intention d'utiliser la boîte EditText pour but recherche)
  3. liste (clic simple ou multi clic)
  4. partie pied (Annuler ou boutons OK)

J'essaie de le faire en utilisant une mise en page séparée, mais l'affichage de la liste ne s'affiche pas correctement (rétrécissement). Donc, je prévois d'utiliser AlertDialog et à l'intérieur j'ai implémenté ListView et pied de page partie dans LinerLayout unique et le définir en utilisant la méthode setView, il a résolu mon affichage de la liste et le problème de pied de page.

Le problème est que je souhaite ajouter une partie d'en-tête en haut de la liste.

image Lien: https://dl.dropboxusercontent.com/u/4048078/device-2013-07-31-141546.png

+1

je doute un titre est censé être modifiable. – njzk2

+1

Créez une mise en page avec 'edittext' comme premier champ. Dans le code, vous devez mentionner "settitle (null)" et utiliser mon code à [below] (http://stackoverflow.com/questions/17965830/android-alertdialog-builder-custom-title-bar-with-edit- text/17966045 # 17966045) –

+0

gars merci, je l'ai fait en utilisant la classe de dialogue. –

Répondre

0

Vous pouvez essayer

Dialog dialog_help = new Dialog(getActivity()); 
dialog_help.setContentView(R.layout.title_multi_selectitems_dialog); 
EditText et_1 = (EditText) dialog_help.findViewById(R.id.et_help_1); 
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); 
imm.showSoftInput(yourEditText, InputMethodManager.SHOW_IMPLICIT); 
dialog_help.setCancelable(true); 
dialog_help.setTitle(" Help "); 
dialog_help.setCanceledOnTouchOutside(true); 
dialog_help.show(); 
dialog_help.getWindow().setGravity(Gravity.CENTER); 
dialog_help.getWindow().setLayout(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT); 
0

Ce n'est pas une bonne pratique de mettre Editbox dans le titre de la boîte de dialogue d'alerte. Pour définir le titre, utilisez les méthodes setTitle et setIcon. EditText le contrôle qu'il vaut mieux placer dans le corps de la boîte de dialogue. Utilisez AlertDialog.Builder.setView(android.view.View) pour cela.

Questions connexes