boolean[] selected ;
String[] subtitlearry = new String[subtitleInfolists.size()];
selected = new boolean[subtitleInfolists.size()];
for (int i = 0; i < subtitleInfolists.size(); i++) {
subtitlearry[i] = subtitleInfolists.get(i).SubtitleName;
}
ShowDialog(subtitlearry);
//Dialog实现
private void ShowDialog(final String[] subtitlarry) {
new AlertDialog.Builder(this).setTitle("复选框").setMultiChoiceItems(subtitlarry, selected, mutiListener)
.setPositiveButton("确定", btnListener).setNegativeButton("取消", null)
.show();
}
DialogInterface.OnClickListener btnListener =
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int which) {
for(int i=0; i<selected.length; i++) {
if(selected[i] == true) {
Log.v("=========OnMultiChoiceClickListener=====","selected["+i+"]="+selected[i]);
mRemoteControl.chooseSubtitle(subtitleInfolists.get(i).SubtitleID);
}
}
}
};
DialogInterface.OnMultiChoiceClickListener mutiListener = new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int which,
boolean isChecked) {
selected[which]=isChecked;
Log.v("=========OnMultiChoiceClickListener=====","which = " +which+" isChecked = "+isChecked);
}
};