android 自定义adapter extends BaseAdapter,做有自己布局的listView
2010-11-20 15:15
369 查看
程序实现效果:
可根据自己喜欢,做任何效果布局。类似simpleadapter.
程序xml文件:
list_view.xml://主文件
item_custom.xml://定义想要的布局效果
程序代码:
可根据自己喜欢,做任何效果布局。类似simpleadapter.
程序xml文件:
list_view.xml://主文件
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <ListView android:id="@+id/list_view" android:layout_width="fill_parent" android:layout_height="fill_parent" android:divider="#ffc9c9c9" android:dividerHeight="1px"/> </LinearLayout>
item_custom.xml://定义想要的布局效果
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="wrap_content" android:layout_height="58px" android:gravity="center_vertical" > <ImageView android:id="@+id/index_image" android:layout_width="wrap_content" android:layout_height="wrap_content" > </ImageView> <TextView android:id="@+id/index_text" android:layout_width="wrap_content" android:layout_height="50px" android:textSize="20sp" android:layout_marginLeft="10px" android:gravity="center" android:textColor="#ff000000"> </TextView> </LinearLayout>
程序代码:
import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.content.Context; import android.graphics.Color; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.ListView; import android.widget.TextView; public class CustomListview extends Activity { private ListView mListView; private List<String> items; @Override public void onCreate(Bundle savedInstanceStated) { super.onCreate(savedInstanceStated); setContentView(R.layout.list_view); mListView = (ListView) findViewById(R.id.list_view); fillArray(); mListView.setAdapter(new CustomListAdapter(this)); } private void fillArray() { items = new ArrayList<String>(); items.add("白天"); items.add("黑天"); items.add("多云"); items.add("微风"); items.add("晴天"); } class CustomListAdapter extends BaseAdapter { private LayoutInflater mInflater; private Context mContext = null; public CustomListAdapter(Context context) { mContext = context; mInflater = LayoutInflater.from(mContext); } public Object getItem(int arg0) { // TODO Auto-generated method stub return items.get(arg0); } public long getItemId(int position) { // TODO Auto-generated method stub return position; } public int getCount() { // TODO Auto-generated method stub return items.size(); } public View getView(int position, View convertView, android.view.ViewGroup parent) { final ImageView indexImage; final TextView indexText; if (convertView == null) { // 和item_custom.xml脚本关联 convertView = mInflater.inflate(R.layout.item_custom, null); } indexImage = (ImageView) convertView.findViewById(R.id.index_image); indexText = (TextView) convertView.findViewById(R.id.index_text); // 设置item中indexText的文本 indexText.setText(items.get(position).toString()); indexText.setTextColor(Color.RED); // 设置item中ImageView的图片 indexImage.setBackgroundResource(R.drawable.icon); return convertView; } } }
相关文章推荐
- android 自定义adapter extends BaseAdapter,做有自己布局的listView
- android ListView布局之三(使用自定义的Adapter绑定数据,通过contextView.setTag绑定数据)有按钮的ListView
- 2014-10-27Android学习------布局处理(八)------自定义ListView的监听事件和Adapter的实现-----城市列表应用程序
- android中,用SimpleAdapter创建有自己布局的listView,以及listView的修改更新notifyDataSetChanged()的使用。
- android listview继承BaseAdapter,自定义的适配器,getView方法执行多组循环解决方式
- android ListView布局之三(使用自定义的Adapter绑定数据,通过contextView.setTag绑定数据)有按钮的ListView
- android一个BaseAdapter的使用(LayoutInflater加载自定义布局)
- Android开发学习之路-自定义ListView(继承BaseAdapter)
- Android中ListView同过自定义布局并使用SimpleAdapter的方式实现数据的绑定
- 【Android】使用自定义Adapter优化ListView、修改数据及控件内部布局
- Android中BaseAdapter的基本用法和加载自定义布局!
- Android中listview布局,自定义adapter,长按,点击,退出的demo
- android自定义BaseAdapter,实现从网络加载包含图片的listview
- android 基础-自定义listView的实现 adapter 方法解析
- Android高手进阶教程(十六)之---Android中万能的BaseAdapter(Spinner,ListView,GridView)的使用!
- Android杂谈--ListView之BaseAdapter的使用和优化
- [转载]Android之自定义Adapter的ListView
- Android基础 | 控件基础 | Listview之BaseAdapter②
- Android杂谈--ListView之BaseAdapter的使用
- Android定制ListView的界面(使用继承自ArrayAdapter的自定义适配器)--《第一行代码Android》学习笔记