剑网3藏剑pve宏,早安迷糊小甜心,女风衣
listview的多种样式条目展示
<listview android:id="@+id/main_listview" android:layout_width="wrap_content" android:layout_height="wrap_content" />
其他的这里就不多说了,直接介绍适配器里的操作
package com.bwei.test.baseadapter; import java.util.list; import com.bwei.test.r; import com.bwei.test.bean.news; import com.nostra13.universalimageloader.core.displayimageoptions; import com.nostra13.universalimageloader.core.imageloader; import android.r.color; import android.r.layout; import android.content.context; import android.view.layoutinflater; import android.view.view; 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<news> newlist; //imageloader private displayimageoptions options; //定义样式常量,注意常量值要从0开始 private static final int type_listview_normal = 0; private static final int type_listview_no_pic = 1; public mybaseadapter(context context, list<news> newlist, displayimageoptions options) { super(); this.context = context; this.newlist = newlist; options = options; } @override public int getcount() { //listview的总共条数 return newlist.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 view getview(int position, view convertview, viewgroup parent) { // todo auto-generated method stub // 获取当前条目的类型 int itemviewtype = getitemviewtype(position); viewholder viewholder; if (convertview==null) { viewholder=new viewholder(); switch (itemviewtype) { case type_listview_normal: convertview=layoutinflater.from(context).inflate(r.layout.title_pic, null); viewholder.imageview=(imageview) convertview.findviewbyid(r.id.imageview1); imageloader.getinstance().displayimage(newlist.get(position).getimgs(), viewholder.imageview,options); convertview.settag(viewholder); break; case type_listview_no_pic: convertview=layoutinflater.from(context).inflate(r.layout.title, null); convertview.settag(viewholder); break; default: break; } viewholder.textcopyright=(textview) convertview.findviewbyid(r.id.copyright); viewholder.texttime=(textview) convertview.findviewbyid(r.id.data); viewholder.texttitle=(textview) convertview.findviewbyid(r.id.title); viewholder.texttitle.settext( newlist.get(position).gettitle()); viewholder.texttime.settext( newlist.get(position).getpubdate()); viewholder.textcopyright.settext( newlist.get(position).getcopyright()); } else { viewholder=(viewholder) convertview.gettag(); switch (itemviewtype) { case type_listview_normal: imageloader.getinstance().displayimage( newlist.get(position).getimgs(), viewholder.imageview,options); break; case type_listview_no_pic: break; default: break; } viewholder.texttitle.settext( newlist.get(position).gettitle()); viewholder.texttime.settext( newlist.get(position).getpubdate()); viewholder.textcopyright.settext( newlist.get(position).getcopyright()); } return convertview; } /** * 获取具体的某个索引值下的条目的条目类型 */ @override public int getitemviewtype(int position) { // todo auto-generated method stub //判断以什么结束的属性 if ( newlist.get(position).getimgs().endswith(".jpg")) { return type_listview_normal; } return type_listview_no_pic; } /** * 获取listview条目类别的个数(样式) */ @override public int getviewtypecount() { // todo auto-generated method stub return 2; } //容器 class viewholder{ imageview imageview; textview texttitle,textcopyright,texttime; } }
以上是多条目样式展示的一种
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Android apk 项目一键打包并上传到蒲公英的实现方法
Android 自定义LineLayout实现满屏任意拖动功能的示例代码
android 限制某个操作每天只能操作指定的次数(示例代码详解)
Android 集成 google 登录并获取性别等隐私信息的实现代码
网友评论