2013-08-29 56 views
1

我想在列表視圖中只添加一個複選框,我正在研究並發現如何在所有行中使用複選框來創建它,但我只需要一行。編輯(已解決)如何在android中的listview中添加一個複選框?

在此先感謝

- 編輯 -

謝謝@Gaurav,我研究,我可以做,但現在當我嘗試點擊與複選框的項目也未獲得點擊

BaseAdapter

public View getView(int arg0, View arg1, ViewGroup arg2) { 
    View v = arg1; 
    if(arg1 == null){ 
     LayoutInflater inf = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     v = inf.inflate(R.layout.row, null); 
    } 
    Articulos art = items.get(arg0); 
    TextView nombre = (TextView) v.findViewById(R.id.tvNombreRow); 
    nombre.setText(art.getNombre()); 
    CheckBox check = (CheckBox) v.findViewById(R.id.chkCuadroRow); 
    check.setChecked(art.getEstado()); 
    if(art.getVisible()){ 
     check.setVisibility(View.VISIBLE); 
    }else{ 
     check.setVisibility(View.INVISIBLE); 
    } 
    return v; 
} 

主要

ArrayList<Articulos> arrayList = new ArrayList<Articulos>(); 
    Articulos articulos; 
    articulos = new Articulos("Color de fondo",false,false); 
    arrayList.add(articulos); 
    articulos = new Articulos("Vencimiento de bonos",false,false); 
    arrayList.add(articulos); 
    articulos = new Articulos("Comparte esta aplicacion",false,false); 
    arrayList.add(articulos); 
    articulos = new Articulos("Visualizador de tiempo",true,true); 
    arrayList.add(articulos); 
    articulos = new Articulos("Configuración",false,false); 
    arrayList.add(articulos); 
    articulos = new Articulos("Tutorial",false,false); 
    arrayList.add(articulos); 
    articulos = new Articulos("Acerca de",false,false); 
    arrayList.add(articulos); 
    articulos = new Articulos("Salir",false,false); 
    arrayList.add(articulos); 

    BaseAdapterCustom adapter = new BaseAdapterCustom(this, arrayList); 
    lstConfiguracion.setAdapter(adapter); 

可能是什麼問題?

+2

你需要的是一個listViewAdapter。在它的getView中,讓你的測試知道你想膨脹哪個視圖。 –

+0

請詳細說明你想要什麼 – Developer

+0

@DamienR。是目前的位置基礎上,我們可以做到這一點 – Developer

回答

0

在BaseAdapater類的getViewü可以試試這個

public View getView(int position, View convertView, ViewGroup parent) { 
     View vi=convertView; 
     vi = inflater.inflate(R.layout.your_layout, null); 
     if(position = yourcondtion){ 
      //set the visibility of the checkbox true or false 
     } 
      return vi; 
     } 

對於選中的複選框試試這個

CheckBox checkBox = (CheckBox)v.findViewById(R.id.Checkbox); 
     checkBox.setChecked(!checkBox.isChecked()); 
+0

這會讓它在沒有被選中時進行檢查 – Developer

+0

這不是問題,我可以設置複選框是否被選中,但是當我嘗試用複選框觸摸該行時,它不會點擊。 –

+0

我沒有得到你想要問我的問題,請給我解釋一下,這樣我可以幫助你或者郵寄我,如果你可以在這[第一張圖片] – Developer

相關問題