2015-07-05 105 views
0

我有幾個複選框在用戶構建汽車時被選中。然後在我的列表視圖適配器,我試圖說明這一點。下面是我的代碼,我不認爲「setText」將用於複選框。在列表視圖中設置複選框狀態適配器

這是我的錯誤:

android.content.res.Resources$NotFoundException: String resource ID #0x1 
at android.content.res.Resources.getText(Resources.java:274) 
at android.widget.TextView.setText(TextView.java:4122) 

這裏是我的ListView適配器代碼:

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    View v = convertView; 
    ViewHolder holder; 
    if(v == null) { 
     v = mInflater.inflate(R.layout.list_item_car, parent, false); 
     holder = new ViewHolder(); 
     holder.txtMake = (TextView) v.findViewById(R.id.txt_make); 
     holder.txtModel = (TextView) v.findViewById(R.id.txt_model); 
     holder.c1 = (CheckBox) v.findViewById(R.id.c1); 
     holder.c2 = (CheckBox) v.findViewById(R.id.c2); 



     v.setTag(holder); 
    } 
    else { 
     holder = (ViewHolder) v.getTag(); 
    } 

    // fill row data 
    Car currentItem = getItem(position); 
    if(currentItem != null) { 
     holder.txtMake.setText(currentItem.getMake()); 
     holder.txtModel.setText(currentItem.getModel()); 
     holder.c1.setText(currentItem.getc1()); //<--error here 
     holder.c2.setText(currentItem.getc2()); //<--error here 
    } 

    return v; 
} 

回答

0

如登錄:

Resources$NotFoundException: String resource ID #0x1

大概getc1()getc2()方法返回int類型值所以系統將這兩個值都視爲id和tryin g找到價值資源。

使用String.valueOf方法來顯示int值作爲文本CheckBox

holder.txtMake.setText(String.valueOf(currentItem.getMake())); 
    holder.txtModel.setText(String.valueOf(currentItem.getModel())); 
    holder.c1.setText(String.valueOf(currentItem.getc1())); 
    holder.c2.setText(String.valueOf(currentItem.getc2())); 
相關問題