私は multispinners について尋ねるほぼすべてのトピックにある multispinner コードを使用しています。
@Override
public boolean performClick() {
if (MainActivity.getSharedInstance().mp != null)
if (MainActivity.getSharedInstance().mp.isPlaying())
{
MainActivity.getSharedInstance().mp.stop();
//MainActivity.getSharedInstance().mp.release();
}
AlertDialog.Builder builder = new AlertDialog.Builder(getContext());
builder.setMultiChoiceItems(
items.toArray(new CharSequence[items.size()]), selected, new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
if (which == 0)
{
if (isChecked == true)
{
selected[0] = true;
selected[1] = false;
selected[2] = false;
selected[3] = false;
selected[4] = false;
selected[5] = false;
selected[6] = false;
selected[7] = false;
}
else
selected[0] = false;
}
else
{
if (isChecked == true)
{
selected[which] = true;
selected[0] = false;
}
else
selected[which] = false;
}
}
});
builder.setPositiveButton(android.R.string.ok,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
builder.setOnCancelListener(this);
builder.show();
return true;
}
最初のチェックボックスが選択された場合はマルチスピナーが他のすべてのチェックボックスをオフにし、他のものが選択された場合は最初のチェックボックスをオフにします。
上記の私のコードの結果は、マルチスピナーダイアログにいるときは機能しませんが、最初のチェックボックスをオンにして閉じてマルチスピナーを再度開くと、他のチェックボックスが更新され、必要に応じてオフになります。
マルチスピナーダイアログを閉じてから再度開く必要なく、どうすればこれを行うことができますか?
あなたの助けをありがとう。