首页 > 代码库 > android开发最常用例子整理----(3)自定义ListView(自定义BaseAdapter实现)
android开发最常用例子整理----(3)自定义ListView(自定义BaseAdapter实现)
在上一个教程中,我们使用SimpleAdapter实现自定义ListView,但是有一点不方便的是,如果要对每一个ListView的item选项进行不同的样式设置,就很麻烦,因为SimpleAdapter使用的是统一的风格样式。如果要实现不同item使用不同的风格样式,那么就要通过集成BaseAdapter来实现。
一、Activity
MainActivity.java源码:public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //Step1 String[] contentArray = new String[]{"内容1","内容2","内容3","内容4","内容5"}; ListView lv = (ListView)findViewById(R.id.lv); //Step2 ArrayList<HashMap<String,Object>> data = http://www.mamicode.com/new ArrayList>();> 二、xml布局文件
(1)MainActivity主界面的布局源码activity_main.xml:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <ListView android:id="@+id/lv" android:layout_width="match_parent" android:layout_height="wrap_content"/> </LinearLayout>(2)ListView列表单元的布局源码list_item.xml:<?xml version="1.0" encoding="utf-8" ?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="match_parent" android:layout_width="match_parent" android:gravity="center_vertical" android:orientation="horizontal"> <LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="2" android:gravity="center_vertical" android:orientation="vertical"> <TextView android:id="@+id/startTimeText" android:layout_height="wrap_content" android:layout_width="match_parent"/> <TextView android:id="@+id/endTimeText" android:layout_height="wrap_content" android:layout_width="match_parent"/> </LinearLayout> <ImageView android:id="@+id/separator" android:layout_weight="1" android:layout_width="0dp" android:layout_height="wrap_content" /> <TextView android:id="@+id/content" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="12"/> </LinearLayout>三、相关资源
res/drawable-mdpi/下的文件:
separator1.png separator2.png separator3.png separator4.png separator5.png
四、效果截图
android开发最常用例子整理----(3)自定义ListView(自定义BaseAdapter实现)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。