Android中動態改變Listview中字體的顏色


效果如下:

 

賬目顯示用的是Listview,要實現的功能為使其根據所在Item是“收入”還是“支出”來把數字設置成綠色或紅色

方法是自定義適配器,並重寫其中getView()函數,實現如下:

  //自定義適配器
public class madaper extends SimpleAdapter{
            public madaper(Context context, List<Map<String, Object>> items, int resource, String[] from, int[] to) {
                super(context, items, resource, from, to);

            }
           public View getView(int position, View convertView, ViewGroup parent){
              convertView=super.getView(position, convertView, parent);//獲得當前生成的Item
               TextView mon=(TextView)convertView.findViewById(R.id.mon);
               TextView num=(TextView)convertView.findViewById(R.id.num);
             //判斷收支類型並設置數字顏色
              if(mon.getText().toString().equals("支出"))num.setTextColor(Color.RED);
              else num.setTextColor(Color.GREEN);

             

                return convertView;
           }

        }

  在適配器生成每一條Item時,都會執行一次getView(),因此在其中可以根據Item數據的不同來達到動態編輯的效果,類似的也可以為每一條Item設置點擊、長按等事件監聽。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM