zoukankan      html  css  js  c++  java
  • 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设置点击、长按等事件监听。

  • 相关阅读:
    View使用总结
    IPC机制总结
    Activity 启动模式总结
    StrictMode 严格模式
    dumpsys, traceView调试命令
    Monkey命令及调试
    Android Studio使用tips
    Java常用数据结构Set, Map, List
    JavaScript String 小球重力弹回
    JavaScript Array 数组方法汇总
  • 原文地址:https://www.cnblogs.com/liuleliu/p/12300483.html
Copyright © 2011-2022 走看看