2016-09-28 91 views
-3

我一直在試圖找到一種方法來改變使用單選按鈕的特定列表視圖項目的文本顏色,但我無法弄清楚。有人可以幫忙嗎?如何使用單選按鈕更改列表視圖項目的文本顏色?

+0

請出示你的東西已經嘗試了什麼? –

+0

如果您已經爲listview項目定義了bean,請使用可變顏色並設置默認顏色。當您單擊單選按鈕時,更改顏色並通知適配器。 –

+0

請分享您嘗試過的代碼。 –

回答

0

對ListView項目使用Adapter和ViewHolder嗎? 如果是這樣,只需在適配器中寫入不斷變化的顏色代碼即可。例如:

private static class ItemHolder { 
    TextView name; 
} 

在適配器:

public class CompanyAdapter extends ArrayAdapter<CompanyDomain> { 

private ArrayList<CompanyDomain> companies; 

public CompanyAdapter(Context context, int resource, 
     ArrayList<CompanyDomain> items) { 
    super(context, resource, items); 
    this.companies = items; 
} 

public View getView(final int position, View convertView, ViewGroup parent) { 
    ItemHolder itemHolder; 
    View view = convertView; 
    if (view == null) { 
     LayoutInflater inflater = LayoutInflater.from(getContext()); 
     view = inflater.inflate(R.layout.company_list_row, null); 
     itemHolder = new ItemHolder(); 
     itemHolder.name = (TextView) view.findViewById(R.id.companyNameTitle); 
    } 
    else { 
     itemHolder = (ItemHolder) view.getTag(); 
    } 

    // condition here 
    if (have to change color) { 
     itemHolder.name.setTextColor(Color.RED); 
    } 

但現在,它是更好地使用RecyclerViewRecyclerView.Adapter

相關問題