用于textview的Android分隔符,如listview

时间:2014-10-05 15:09:11

标签: android listview textview android-linearlayout

            for (int i = 0; i < tel.size(); i++) {
            LayoutInflater inflater = getLayoutInflater();
            View vi = inflater.inflate(R.layout.telefones, null);
            TextView tv = (TextView) vi.findViewById(R.id.telefone);
            tv.setText(tel.get(i).getNumero());
            l1.addView(vi);

            ImageView divider = new ImageView(this);
            LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 5);
            lp.setMargins(10, 10, 10, 10);
            divider.setLayoutParams(lp);
            divider.setBackgroundColor(Color.RED);
            l1.addView(divider);



        }

该代码给了我以下结果:

enter image description here

但下图是我想要实现的目标: 如何删除最后一项的分隔符? enter image description here

1 个答案:

答案 0 :(得分:1)

for (int i = 0; i < tel.size(); i++) {
        LayoutInflater inflater = getLayoutInflater();
        View vi = inflater.inflate(R.layout.telefones, null);
        TextView tv = (TextView) vi.findViewById(R.id.telefone);
        tv.setText(tel.get(i).getNumero());
        l1.addView(vi);

        ImageView divider = new ImageView(this);
        LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 5);
        lp.setMargins(10, 10, 10, 10);
        divider.setLayoutParams(lp);
        if((i+1)<tel.size){
            divider.setBackgroundColor(Color.RED);
        }else{
            divider.setBackgroundColor(Color.TRANSPARENT);
        }
        l1.addView(divider);
    }

试试这个!