OnItemClick をリストビューに攻撃し、onItemClick() 内で、ラジオ ボタン、[キャンセル] および [選択] を含むダイアログを開きます。ダイアログ内で、選択したリストビュー項目の値を渡すことができるように、ある種の clickListener または itemSelectedListener が必要だと思います。
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if(position == 0) {
CheckBox checkBox = (CheckBox) mRoot.findViewById(R.id.cbRowCheckBox);
checkBox.setChecked(!checkBox.isChecked());
}
if(position == 1) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle(R.string.sync_frequency);
ListView listView = new ListView(getActivity());
listView.setOnItemClickListener(new OnItemClickListener()); <-----
String[] syncOptions = mSyncOptions;
ArrayAdapter<String> modeAdapter = new ArrayAdapter<String>(getActivity(), android.R.layout.select_dialog_singlechoice, android.R.id.text1, syncOptions);
builder.setSingleChoiceItems(modeAdapter, 0, null);
builder.setView(listView);
builder.setPositiveButton(R.string.sync_select,null);
builder.setNegativeButton(R.string.sync_cancel,null);
final Dialog dialog = builder.create();
dialog.show();
}
}
});
しかし、タイプ AdapterView.OnItemClickListener をインスタンス化できないというエラーが表示されます。最適なルートは何ですか、またはこれを修正して、ユーザーが選択したラジオ ボタンをコードに知らせるにはどうすればよいですか? ありがとう!