zoukankan      html  css  js  c++  java
  • Android开发之ListView设置隔行变色

     1 public class HLCheckAdapter extends BaseAdapter {
     2 
     3     private List<HuoLiang> list;
     4     private Context context;
     5     private int item;
     6     private LayoutInflater inflater;
     7 
     8     public HLCheckAdapter(List<HuoLiang> list, int item, Context context) {
     9         this.list = list;
    10         this.item = item;
    11         this.context = context;
    12         this.inflater = LayoutInflater.from(context);
    13     }
    14 
    15     @Override
    16     public int getCount() {
    17         // TODO Auto-generated method stub
    18         return list.size();
    19     }
    20 
    21     @Override
    22     public Object getItem(int arg0) {
    23         // TODO Auto-generated method stub
    24         return list.get(arg0);
    25     }
    26 
    27     @Override
    28     public long getItemId(int arg0) {
    29         // TODO Auto-generated method stub
    30         return 0;
    31     }
    32 
    33     @Override
    34     public View getView(int position, View convertView, ViewGroup parent) {
    35         // TODO Auto-generated method stub
    36         ViewHolder holder = null;
    37         if (convertView == null) {
    38             convertView = inflater.inflate(item, null);
    39             holder = new ViewHolder();
    40             holder.dianmian = (TextView) convertView
    41                     .findViewById(R.id.dianmain);
    42             holder.agent_cargo_charge = (TextView) convertView
    43                     .findViewById(R.id.agent_cargo_charge);
    44             holder.total_price = (TextView) convertView
    45                     .findViewById(R.id.total_price);
    46             holder.shuliang = (TextView) convertView
    47                     .findViewById(R.id.shuliang);
    48             holder.quantity = (TextView) convertView
    49                     .findViewById(R.id.quantity);
    50             holder.no = (TextView) convertView.findViewById(R.id.number);
    51             convertView.setTag(holder);
    52         } else {
    53             // viewHolder被复用
    54             holder = (ViewHolder) convertView.getTag();
    55         }
    56         String dianmian = list.get(position).getDianmian();
    57         String total_price = list.get(position).getTotal_price();
    58         String agent_cargo_charge = list.get(position).getAgent_cargo_charge();
    59         String shuliang = list.get(position).getShuliang();
    60         String quantity = list.get(position).getQuantity();
    61         String number = position + 1 + "";
    62         holder.no.setText(number);
    63         holder.dianmian.setText(dianmian);
    64         holder.total_price.setText(total_price);
    65         holder.agent_cargo_charge.setText(agent_cargo_charge);
    66         holder.shuliang.setText(shuliang);
    67         holder.quantity.setText(quantity);
    68         holder.no.setTypeface(Typeface.SANS_SERIF, Typeface.ITALIC);
    69         holder.dianmian.setTypeface(Typeface.SANS_SERIF, Typeface.BOLD);// 第一个参数:字体类型、第二个参数字体风格
    70         
    71         holder.total_price.setTypeface(Typeface.SANS_SERIF, Typeface.BOLD_ITALIC );//粗斜体
    72         holder.agent_cargo_charge.setTypeface(Typeface.SANS_SERIF, Typeface.BOLD_ITALIC );
    73         holder.shuliang.setTypeface(Typeface.SANS_SERIF, Typeface.BOLD_ITALIC );
    74         holder.quantity.setTypeface(Typeface.SANS_SERIF, Typeface.BOLD_ITALIC );
    75         // 为listView设置隔行变色
    76         if (position % 2 == 0) {
    77             convertView.setBackgroundResource(R.drawable.item_selector);
    78         } else {
    79             convertView.setBackgroundResource(R.drawable.item_selector1);
    80         }
    81 
    82         return convertView;
    83     }
    84 
    85     private class ViewHolder {
    86         private TextView dianmian;
    87         private TextView total_price;
    88         private TextView agent_cargo_charge;
    89         private TextView shuliang;
    90         private TextView quantity;
    91         private TextView no;
    92     }
    93 }

    item_selector.xml

    1 <?xml version="1.0" encoding="utf-8"?>
    2 <selector xmlns:android="http://schemas.android.com/apk/res/android" >
    3     <item android:state_pressed="false" android:drawable="@color/itemnormal1"></item>
    4 
    5 </selector>

    item_selector1.xml

    1 <?xml version="1.0" encoding="utf-8"?>
    2 <!--?xml version="1.0" encoding="utf-8"?-->
    3 <selector xmlns:android="http://schemas.android.com/apk/res/android">
    4     <item android:state_pressed="false" android:drawable="@color/itemnormal2"></item>
    5 </selector>

    隔行变色设置的颜色:

     <color name="itemnormal1">#F8F8F8</color>
     <color name="itemnormal2">#D8EBEF</color>
  • 相关阅读:
    Codeforces Round #600 (Div. 2) A. Single Push
    Codeforces Round #600 (Div. 2) B. Silly Mistake
    106. 从中序与后序遍历序列构造二叉树
    23. 合并K个升序链表
    203. 移除链表元素
    328. 奇偶链表
    86. 分隔链表
    面试题 02.05. 链表求和
    面试题 02.02. 返回倒数第 k 个节点
    剑指 Offer 18. 删除链表的节点
  • 原文地址:https://www.cnblogs.com/1925yiyi/p/7472476.html
Copyright © 2011-2022 走看看