listview的多条目样式适配
来源:互联网 发布:中国项目数据分析师 编辑:程序博客网 时间:2024/06/04 16:48
这里是一个listview多条目展示的简单Dome,其中主要展示了listview适配器中的代码
[java] view plain copyprint? package com.example.monthtext; import java.util.List; import com.example.monthtext.Info.NewsList; import com.lidroid.xutils.BitmapUtils; import com.nostra13.universalimageloader.core.DisplayImageOptions; import com.nostra13.universalimageloader.core.ImageLoader; import android.content.Context; import android.content.Intent; import android.sax.StartElementListener; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; public class MyBaseAdapter extends BaseAdapter { private Context context; private List<NewsList> list; private static final int TYPE_LISTVIEW_NORMAL = 0; private static final int TYPE_LISTVIEW_THREE = 1; private ViewHolder viewHolder; private BitmapUtils bitmap; private DisplayImageOptions initOptions; public MyBaseAdapter(Context context, List<NewsList> list) { super(); this.context = context; this.list = list; initOptions = ImageLoaderUtils.initOptions(); } @Override public int getCount() { // TODO Auto-generated method stub return list.size(); } @Override public Object getItem(int arg0) { // TODO Auto-generated method stub return null; } @Override public long getItemId(int arg0) { // TODO Auto-generated method stub return 0; } @Override public int getViewTypeCount() { // TODO Auto-generated method stub return 2; } @Override public int getItemViewType(int position) { if(list.get(position).thumbnails_qqnews.size()==1){ return TYPE_LISTVIEW_NORMAL; }if(list.get(position).thumbnails_qqnews.size()!=1){ return TYPE_LISTVIEW_THREE; } return TYPE_LISTVIEW_NORMAL; } @Override public View getView(final int arg0, View convertView, ViewGroup arg2) { bitmap = new BitmapUtils(context); int itemViewType = getItemViewType(arg0); if(convertView==null){ viewHolder = new ViewHolder(); switch (itemViewType) { case TYPE_LISTVIEW_NORMAL: convertView= View.inflate(context, R.layout.list_item_one, null); viewHolder.lv1_img = (ImageView) convertView.findViewById(R.id.lv1_img); viewHolder.lv1_text1 = (TextView) convertView.findViewById(R.id.lv1_text1); viewHolder.lv1_text2 = (TextView) convertView.findViewById(R.id.lv1_text2); convertView.setTag(viewHolder); break; case TYPE_LISTVIEW_THREE: convertView= View.inflate(context, R.layout.list_item_two, null); viewHolder.lv2_text = (TextView) convertView.findViewById(R.id.lv2_text); viewHolder.lv2_img1 = (ImageView) convertView.findViewById(R.id.lv2_img1); viewHolder.lv2_img2 = (ImageView) convertView.findViewById(R.id.lv2_img2); viewHolder.lv2_img3 = (ImageView) convertView.findViewById(R.id.lv2_img3); convertView.setTag(viewHolder); break; default: break; } }else{ viewHolder = (ViewHolder) convertView.getTag(); switch (itemViewType) { case TYPE_LISTVIEW_NORMAL: ImageLoader.getInstance().displayImage( list.get(arg0).thumbnails_qqnews.get(0), viewHolder.lv1_img, initOptions); viewHolder.lv1_text1.setText(list.get(arg0).title); viewHolder.lv1_text2.setText(list.get(arg0).longtitle); break; case TYPE_LISTVIEW_THREE: ImageLoader.getInstance().displayImage( list.get(arg0).thumbnails_qqnews.get(2), viewHolder.lv2_img3, initOptions); ImageLoader.getInstance().displayImage( list.get(arg0).thumbnails_qqnews.get(1), viewHolder.lv2_img2, initOptions); ImageLoader.getInstance().displayImage( list.get(arg0).thumbnails_qqnews.get(0), viewHolder.lv2_img1, initOptions); viewHolder.lv2_text.setText(list.get(arg0).title); break; default: break; } } convertView.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent intent=new Intent(context, WebActivity.class); intent.putExtra("url",list.get(arg0).short_url); context.startActivity(intent); } }); return convertView; } class ViewHolder{ TextView lv1_text1 ,lv1_text2,lv2_text; ImageView lv1_img,lv2_img1,lv2_img2,lv2_img3; } }
list_item_one布局
[java] view plain copyprint? <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <ImageView android:layout_width="100dp" android:layout_height="100dp" android:id="@+id/lv1_img"/> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" > <TextView android:textSize="18sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/lv1_text1"/> <TextView android:layout_marginTop="18dp" android:textSize="14sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/lv1_text2"/> </LinearLayout> </LinearLayout>
[java] view plain copyprint? <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/lv2_text"/> <LinearLayout android:layout_margin="10dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/lv2_img1"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/lv2_img2"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/lv2_img3"/> </LinearLayout> </LinearLayout>
0 0
- listview的多条目样式适配
- listview的多条目样式适配
- ListView的多条目
- ListView的多条目加载的适配
- listview多条目类型适配
- ListView的多条目展示
- listview的多条目展示
- ListView多条目的展示
- Listview多条目的代码
- ListView的多条目加载
- ListView的多条目加载
- Listview的多条目加载
- ListView的多条目加载
- ListView的多条目加载
- ListView的多条目加载
- ListView的多条目加载
- ListView 选中条目样式改变
- 简单的多条目适配器代码 ,:---------两种条目样式
- Java 读写Properties配置文件
- POJ 3172 Scales(dfs搜索)
- java IO流总结篇(一)
- java容器简介
- 栈的基本操作
- listview的多条目样式适配
- 2016 Multi-University Training Contest 4 - 1011 Where Amazing Happens(水水水)
- 面试题59:对称的二叉树
- GridView的下拉刷新上拉加载
- C++ std::sort和 std::stable_sort
- Y2K Accounting Bug
- solidworks2014可否保存成以前版本?--问题解决
- rabbitmq的监控
- BRDF模糊环境光照的简单实现