0

各行にラジオ ボタンが含まれるカスタム アダプターを作成します。一度に選択できるラジオ ボタンは 1 つだけです。これまで、常に onClick (または onTouch) イベント ハンドラーをリストビューに追加し、(ArrayList に格納されている) すべてのアイテムを調べて、最後に選択されたアイテムを特定し、チェックを外しました (現在選択されているアイテムとは異なる場合)。 1) 次に、現在選択されている行に関連付けられている項目をマークして、その項目が選択されていることを示し、その項目のラジオ ボタンをオンにします。

これは、物事を行うには長い道のりのようです。Android で、現在選択されているラジオ ボタンを自動的にオフにしてから、新しく選択したラジオ ボタンを選択する簡単な方法はありますか?

4

2 に答える 2

1

現在選択されているアイテムのみを追跡adapter.notifyDataSetChange()し、ラジオ ボタンのクリックで呼び出すことをお勧めします。これにより、ビューが更新され、以前に選択したラジオ ボタンのチェックが外れます。

アダプターでは、次のように記述する必要があります。

View getView(...) {
    /////// initialize views

    if (getItemId(position) == selectedId) {
        radioButton.setChecked(true);
    } else {
        radioButton.setChecked(false);
    }

    //////////
}

これは正確なコードではありませんが、アイデアが得られたことを願っています。

于 2013-11-07T08:32:21.513 に答える
0

これがあなたを助けますように。

http://custom-android-dn.blogspot.in/2012/12/how-to-use-and-custom-radio-button-in_23.html

通常、ラジオ ボタンはラジオ グループごとにグループ化されます。グループ内の 1 つの RadioButton が選択されると、他のすべてのラジオ ボタンは自動的に選択解除されます。

于 2013-11-07T09:15:12.610 に答える