1

チェックボックスがチェックされている場合はチェックボックスの背景色を設定し、チェックされていない場合はその色を削除しようとしています。

チェックボックスのIDを見つけて、チェックされているかどうかを確認できる人はいますか。XMLシートに設定しましたandroid:onClick="handleCheckBoxClick"

どのように見えるかを理解していただくために、約 25 個のチェック ボックスがあります。彼らが押されたとき、私は彼らに同じことをする必要があります。

コードのブロックを 1 つにすることは可能ですか、それともチェックボックスごとに繰り返す必要がありますか?

編集:これがフラグメント内にあることに言及するのを忘れました(それが違いを生む場合)

public void handleCheckBoxClick(View view) {
        int chkID = view.getId();

        if (){

        }else{

        }

        //find which checkbox was checked then get its id
        /*
         * if checked then
         * change background colour to blue
         * if unchecked then
         * remove background colour
         * 
         */
    }

色の部分は、学ぶ必要があるので自分で試します。

4

3 に答える 3

2

望ましい方法は、カスタム チェックボックスを使用することです。描画可能な XML ファイルを使用して、両方checked stateで背景を設定するには。unchecked state

これを行う別の簡単な例を次に示します。次の写真はこのページからの引用です。

]

于 2013-10-18T10:42:01.040 に答える
0

チェックボックス(ボタン)の背景色の変更に興味がある場合は、

mycheckbox.setButtonDrawable(R.drawable.otherbackground);

someother background は、チェックボックスを変更する背景の drawable フォルダー内の画像です

フォローしてみてください

mycheckbox.setOnCheckedChangeListener(new OnCheckedChangeListener() {

    public void onCheckedChanged(CompoundButton buttonView,
            boolean isChecked) {

        if (isChecked) {
            mycheckbox.setButtonDrawable(R.drawable.imageWhenActive);
        }
        else
        {
            mcheckbox.setButtonDrawable(R.drawable.imageWheninactive);
        }
    }
});
于 2013-10-18T10:38:15.943 に答える