1

リストビューでチェックボックスを使用する方法.これで、チェックボックスのクリックでいくつかのタスクを実行したい.チェックボックスを使用して、その特定のIDまたはリスト項目の値を選択する方法がわかりませんでした.

4

3 に答える 3

1

getview配列アダプターのメソッドをオーバーライドするだけです。viewholderカスタムリストを取得するために使用しますcheckbox

コード例:

public View getView(int position, View convertView, ViewGroup parent) {

   ViewHolder holder = null;
   Log.v("ConvertView", String.valueOf(position));

   if (convertView == null) {
   LayoutInflater vi = (LayoutInflater)getSystemService(
     Context.LAYOUT_INFLATER_SERVICE);
   convertView = vi.inflate(R.layout.your_layout, null);

   holder = new ViewHolder();      
   holder.name = (CheckBox) convertView.findViewById(R.id.checkBox1);
   convertView.setTag(holder);

    holder.name.setOnClickListener( new View.OnClickListener() { 
     public void onClick(View v) { 
      CheckBox cb = (CheckBox) v ; 

      Toast.makeText(getApplicationContext(),
       "Clicked on Checkbox: " + cb.getText() +
       " is " + cb.isChecked(),
       Toast.LENGTH_LONG).show();

     } 
    }); 
   } 

簡単なチュートリアルについては、このリンクを参照してください。

これがお役に立てば幸いです。

于 2013-04-11T04:23:33.157 に答える
0

これは、 using を使用して実行できますCompoundButton.OnCheckChangedListener。このリスナーをインラインで次のように設定できます。

//Create a CheckBox object from your CheckBox id that is in the ListView in your xml layout file
CheckBox foo = (CheckBox) findViewById(R.id.foo);

foo.setOnCheckedChangedListener( new CompoundButton.OnCheckedChangedListener() {

    @Override
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
        if (isChecked = true){
            // perform some operations when checked
        } else {
            // perform some operations when unchecked
    }

});

Android のチェックボックスと CompoundButtons (CheckBox スーパークラス) に関するドキュメントは、次の場所にあります。

Android のドキュメントは非常に便利ですが、暗号化して必要なものを見つけるのが難しい場合があります。これがあなたの質問に答えることを願っています!

于 2013-04-11T04:37:55.783 に答える