2017-11-04 7 views
2

私はオプションを押した順にリスナーとのマルチチェックダイアログを行いたいと思います。どうやってやるの?クリック注文のマルチチェックダイアログ

String[] multiChoiceItems = 
getResources().getStringArray(R.array.dialog_choice_array_monday); 
boolean[] checkedItems = {false, false, false, false, false, false, false}; 
new AlertDialog.Builder(NewScheduleActivity.this) 

.setTitle(getString(R.string.main_dialog_multi_choice_monday)) 
.setMultiChoiceItems(multiChoiceItems, checkedItems, null) 
.setPositiveButton(getString(R.string.dialog_ok), null) 
.setNegativeButton(getString(R.string.dialog_cancel), null) 
.show();  
     } 
+0

てみましたか?参照してください:https://stackoverflow.com/questions/13341560/how-to-create-a-custom-dialog-box-in-android – nhoxbypass

+0

@nhoxbypass問題は、押されたオプションの順序を聞くことです..私はドンこれを実現する方法を知っていない – d0me

+0

私の解決策があなたが探しているものであるかどうか教えてください –

答えて

0

これは役立つはず:私は思う

onClick(DialogInterface dialog, int which, boolean isChecked) 

:あなたは新しいDialogeInterface.OnMulを入力し始めるだろうとき

.setMultiChoiceItems(multiChoiceItems, null, new DialogInterface.OnMultiChoiceClickListener() { 

}); 

が......それは抽象メソッドをautoimplementますこの配列のデータを使用する必要があるかどうかに応じて、checkedItems配列の代わりにnullを使用できます。あなたがする必要がどのような

は、シーケンスの新しい配列を作成し、onClickのリスナーに、ちょうどsequenceArrayで選択された要素を追加するために内部のコードを追加します!最後に、この配列には選択された順序でデータが格納されます。

String[] multiChoiceItems = getResources().getStringArray(R.array.dialog_choice_array_monday); 
    ArrayList<String> sequenceArray = new ArrayList<>(); 
new AlertDialog.Builder(NewScheduleActivity.this) 

         .setTitle(getString(R.string.main_dialog_multi_choice_monday)) 
         .setMultiChoiceItems(multiChoiceItems, null, new DialogInterface.OnMultiChoiceClickListener() { 
          @Override 
          public void onClick(DialogInterface dialog, int which, boolean isChecked) { 
           sequenceArray.add(multiChoiceItems[which]) 
          } 
         } 
         .setPositiveButton(getString(R.string.dialog_ok), null) 
         .setNegativeButton(getString(R.string.dialog_cancel), null) 
         .show(); 
      } 

Androidのウェブサイト:カスタムダイアログをhttps://developer.android.com/reference/android/content/DialogInterface.html

+0

私は本当にこの新しいものを追加しています...良いsequenceArrayのコードを書いてください。 – d0me

+0

私の投稿を編集しました。コードを確認してください –

+0

ありがとうございました!マルチチェックのチェックボックスを変更する方法はありますか? – d0me