jiekou19910106 发表于 2011-10-9 20:53:07

圆角背景的ListView

本帖最后由 jiekou19910106 于 2011-10-9 20:53 编辑




http://www.apkbus.com/data/attachment/forum/201110/08/201540wmg7rv181lqdz078.png
先定义一张圆角的图片shape_bg_listview.xml

然后在ListView中引用它,注意android:listSelector为了去掉选中效果:

[*]<ListView android:id="@+id/list"
[*]                android:layout_width="fill_parent"
[*]                android:layout_height="wrap_content"
[*]                android:layout_margin="20.0dip"
[*]                android:cacheColorHint="@null"
[*]                android:listSelector="@drawable/shape_bg_listview"
[*]                android:background="@drawable/shape_bg_listview"
[*]                />

复制代码


代码:

[*]public class App extends Activity {
[*]        private ListView mListView = null;
[*]
[*]    /** Called when the activity is first created. */
[*]    @Override
[*]    public void onCreate(Bundle savedInstanceState) {
[*]        super.onCreate(savedInstanceState);
[*]        setContentView(R.layout.main);
[*]        ArrayList<String> list =new ArrayList<String>();
[*]        list.add("1");
[*]        list.add("2");
[*]        list.add("3");
[*]        mListView =  (ListView)findViewById(R.id.list);
[*]        mListView.setAdapter(new AppAdapter(this,list));
[*]    }
[*]
[*]    class AppAdapter extends BaseAdapter{
[*]
[*]            Context context;
[*]            ArrayList<String> list;
[*]            AppAdapter(Context context,ArrayList<String> list){
[*]                    this.context=context;
[*]                    this.list=list;
[*]            }
[*]                @Override
[*]                public int getCount() {
[*]                        // TODO Auto-generated method stub
[*]                        return list.size();
[*]                }
[*]
[*]                @Override
[*]                public Object getItem(int position) {
[*]                        // TODO Auto-generated method stub
[*]                        return list.get(position);
[*]                }
[*]
[*]                @Override
[*]                public long getItemId(int position) {
[*]                        // TODO Auto-generated method stub
[*]                        return position;
[*]                }
[*]
[*]                @Override
[*]                public View getView(int position, View convertView, ViewGroup parent) {
[*]                        // TODO Auto-generated method stub
[*]                        TextView tv;
[*]                        if(convertView==null){
[*]                                convertView=LayoutInflater.from(context).inflate(R.layout.simple_item_2, null);
[*]                        }
[*]                        tv=(TextView)convertView.findViewById(R.id.name);
[*]                        tv.setText(list.get(position));
[*]                        return convertView;
[*]                }
[*]
[*]    }
[*]}

复制代码



simple_item_2.xml定义如下:

[*]<?xml version="1.0" encoding="utf-8"?>
[*]<RelativeLayout
[*]        xmlns:android="http://schemas.android.com/apk/res/android"
[*]        android:layout_width="fill_parent"
[*]        android:layout_height="wrap_content"
[*]        >
[*]        <TextView
[*]                android:id="@+id/name"
[*]                android:textSize="17.0sp"
[*]                android:textColor="@android:color/black"
[*]                android:layout_width="wrap_content"
[*]                android:layout_height="wrap_content"
[*]                android:layout_marginLeft="20.0dip"
[*]                android:layout_alignParentLeft="true"
[*]                android:layout_centerVertical="true"
[*]                >
[*]        </TextView>
[*]        <ImageView
[*]                android:layout_width="wrap_content"
[*]                android:layout_height="wrap_content"
[*]                android:layout_marginRight="20.0dip"
[*]                android:src="@drawable/arrow"
[*]                android:layout_alignParentRight="true"
[*]                android:layout_centerVertical="true"
[*]                >
[*]        </ImageView>
[*]</RelativeLayout>

复制代码

页: [1]
查看完整版本: 圆角背景的ListView