2014-10-04 93 views
0

我想在我的應用程序中使用自定義ListView .. 我創建了一個Myadapter擴展BaseAdapter。 每個項目都有一個文本視圖和切換按鈕.. 問題是,程序,當用戶點擊項目1的切換按鈕, 切換按鈕項目4和項目6.自動切換... 我不知道什麼是這個問題請幫我... 對不起。我的英語不太好如何在項目自定義listView中使用切換按鈕?

Java代碼:

public class PayamActivity extends Activity { 



Myadapter adapter; 
ListView list; 
String [] payam; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_listview); 



    payam=getResources().getStringArray(R.array.payam); 

    list=(ListView) findViewById(R.id.listView1); 
     } 
public class Myadapter extends BaseAdapter 
{ 
    LayoutInflater myInflater; 
    public Myadapter(Context context) { 
     myInflater=LayoutInflater.from(context); 

     // TODO Auto-generated constructor stub 
    } 


    @Override 
    public int getCount() { 
     // TODO Auto-generated method stub 

     return payam.length; 
    } 

    @Override 
    public Object getItem(int position) { 
     // TODO Auto-generated method stub 
     return position; 
    } 

    @Override 
    public long getItemId(int position) { 
     // TODO Auto-generated method stub 
     return position; 
    } 

    @Override 
    public View getView(final int position, View convertView, ViewGroup parent) { 
     // TODO Auto-generated method stub 
     ViewHolder Holder; 
     ; 

     if(convertView==null) 
     { 
      Holder=new ViewHolder(); 
      convertView=myInflater.inflate(R.layout.item_custom_layout,null); 

      Holder.message=(TextView)convertView.findViewById(R.id.text_massege); 

     Holder.heart=(ToggleButton)convertView.findViewById(R.id.toggleButton_heart); 
      convertView.setTag(Holder); 




     } 
     else 
      Holder=(ViewHolder) convertView.getTag(); 



      Holder.message.setText(payam[position]); 




     return convertView; 
    } 

} 

public class ViewHolder extends Activity{ 
    TextView message; 
    ToggleButton heart; 

} 

}

回答

0

每當你點擊的toogle按鈕,保存在一個ArrayList或者陣列排哪個位置適合你...

而且在這樣getview()

添加代碼,

if(array contains the id) 
    Holder.heart.setchecked(true); 
else 
    Holder.heart.setchecked(false); 

請檢查此鏈接

http://www.androprogrammer.com/2013/10/list-view-with-check-box-using-custom.html

+0

謝謝你的回答......你能不能解釋一下,當然更 – anjeli 2014-10-04 12:58:49

+0

是的,但你究竟需要知道什麼? – sam 2014-10-04 13:24:05

+0

謝謝..我沒有數組列表中的Java代碼...我不知道我是如何添加上面的代碼在我的代碼?... – anjeli 2014-10-04 13:40:32

相關問題