http://download.csdn.net/download/wanghao200906/8219405

http://download.csdn.net/download/wanghao200906/8219405

http://download.csdn.net/download/wanghao200906/8219405



 android listview 的 getViewTypeCount和getItemViewType  

wanghao2009062014-12-03上传

<a class="shareCount"></a>

简介

android listview 的 getViewTypeCount和getItemViewType详细解释

p class="dis mb-bg"> 简介:android listview 的 getViewTypeCount和getItemViewType详细解释 </p

  • 资源积分:0分
  • 下载次数:169次
  • 资源类型: 代码类
  • 资源大小:4.47MB
  • 资源得分:
  • (10位用户参与评分)


电信下载


联通下载 _gaq.push(['_trackEvent','function', 'onclick', 'download-download_VIPxiazai']);


VIP免积分下载

收藏(1) 评论(2) 举报 我的评论资源

广告位:资源下载页 头文件下视窗300*250

AdForward Begin: 判断是否含有‘破解’关键字 start


AdForward End

300*250

<div id="job_down_detail_reco" style="width: 353px;float: left;margin-right: 22px;" class="related clearfix"> <script src="http://c.csdnimg.cn/jobreco/job_reco.js" type="text/javascript"></script> <script type="text/javascript"> csdn.position.show({ sourceType: "download", tplType: "downDetail", searchType: "detail", searchKey: "8219405", username: "fygwfygyiq", containerId: "job_down_detail_reco" //容器DIV的id。 }); </script> </div> 专辑推荐start 20160301换成购买VIP <div class="list mb-bg abc" style=" float: left; width: 353px; height: 190px; overflow: hidden; margin-top: 0px; margin-right:20px; position: relative;background: #fff;padding: 11px 10px;margin-bottom: 20px;"> <div class="list-attr panel panel-default"> <div class="panel-heading"> <h3 class="panel-title">专辑推荐</h3> </div> <div class="panel-body"> <ul class="down_edu_t"> <!--AdForward Begin: <li style="line-height: 23px;display:block;margin-bottom: 4px;margin-top: 4px;padding-top: 1px;"> <a href="/album/detail/" title="" target="_blank"></a> </li> AdForward End </ul> </div> </div><a href="/album/list" class="change" style=" position: absolute; right: 10px; top: 20px; /* color: #999; */ color: #cc0000;" target="_blank">【更多】</a> </div> 专辑推荐end vip开通








http://blog.csdn.net/wanghao200906/article/details/41693859?utm_source=tuicool&utm_medium=referral

http://blog.csdn.net/wanghao200906/article/details/41693859?utm_source=tuicool&utm_medium=referral

http://blog.csdn.net/wanghao200906/article/details/41693859?utm_source=tuicool&utm_medium=referral



android listview多种布局 getViewTypeCount和getItemViewType

标签: androidgetViewTypeCountgetItemViewType

2014-12-03 10:43 2105人阅读 评论(0) 收藏 举报

 分类: android(27) 

版权声明:本文为博主原创文章,未经博主允许不得转载。

一般listview都是一种样式,但如果出现 多种样式 ,类似于这一条item是 文字 下一条是图片 在下一条是文字加图片,也许你会说 那就在那就在一个xml文件里面写三者样式呗。那如果是 一百个呢。。哇。。这维护起来 可是个大工程,我可不想加班。


先上图片看看样子:两种样式     只为了为了说明问题


那么方法来了,使用getViewTypeCount和getItemViewType

getViewTypeCount 方法返回的是 你有几种样式  返回时是 int类型

getItemViewType 返回值 是你某一种样式 的类型 是什么。。返回值也是  int类型 ,意思是  代表 A类型的 是 数字 1.。。就是这意思


两个方法很简单呢 直接上代码,基本没什么特别的,就是加了两个方法而已 


[java] view plain copy


  1. package com.org.mmp.Play;  
  2.   
  3. import java.util.List;  
  4.   
  5. import com.org.mmp.R;  
  6.   
  7. import android.content.Context;  
  8. import android.view.LayoutInflater;  
  9. import android.view.View;  
  10. import android.view.ViewGroup;  
  11. import android.widget.BaseAdapter;  
  12. import android.widget.ImageView;  
  13. import android.widget.TextView;  
  14.   
  15. public class PlayAdapter extends BaseAdapter {  
  16.     /** 
  17.      * 标题的item 
  18.      */  
  19.     public static final int ITEM_TITLE = 0;  
  20.     /** 
  21.      * 二级菜单的item 
  22.      */  
  23.     public static final int ITEM_INTRODUCE = 1;  
  24.     private List<ViewItem> mList;  
  25.     private Context context;  
  26.   
  27.     private LayoutInflater inflater;  
  28.   
  29.     // 两个样式 两个holder。100就写100holder。。当然你何以把他抽离出来这里先只为了说明问题  
  30.     class Holder1 {  
  31.         TextView play_title;  
  32.   
  33.         Holder1(View view) {  
  34.             play_title = (TextView) view.findViewById(R.id.play_title);  
  35.         }  
  36.   
  37.     }  
  38.   
  39.     class Holder2 {  
  40.         TextView play_introduce_title;  
  41.         ImageView play_iv;  
  42.   
  43.         Holder2(View view) {  
  44.             play_introduce_title = (TextView) view  
  45.                     .findViewById(R.id.play_introduce_title);  
  46.             play_iv = (ImageView) view.findViewById(R.id.play_iv);  
  47.         }  
  48.     }  
  49.   
  50.     public PlayAdapter(Context context, List<ViewItem> mList) {  
  51.         this.context = context;  
  52.         this.mList = mList;  
  53.         inflater = LayoutInflater.from(context);  
  54.     }  
  55.   
  56.     @Override  
  57.     public int getCount() {  
  58.         // TODO Auto-generated method stub  
  59.         System.out.println("mList.size()" + mList.size());  
  60.         return mList.size();  
  61.     }  
  62.   
  63.     @Override  
  64.     public Object getItem(int arg0) {  
  65.         // TODO Auto-generated method stub  
  66.         return mList.get(arg0);  
  67.     }  
  68.     //返回 代表某一个样式 的 数值    
  69.     @Override  
  70.     public int getItemViewType(int position) {  
  71.         // TODO Auto-generated method stub  
  72.         return mList.get(position).type;  
  73.     }  
  74.   
  75.     //两个样式 返回2  
  76.     @Override  
  77.     public int getViewTypeCount() {  
  78.         // TODO Auto-generated method stub  
  79.         return 2;  
  80.     }  
  81.   
  82.     @Override  
  83.     public long getItemId(int arg0) {  
  84.         // TODO Auto-generated method stub  
  85.         return arg0;  
  86.     }  
  87.   
  88.     @Override  
  89.     public View getView(int position, View convertView, ViewGroup parent) {  
  90.         int type = getItemViewType(position);  
  91.   
  92.         Holder1 holder1 = null;  
  93.         Holder2 holder2 = null;  
  94.         System.out.println("getView " + position + " " + convertView  
  95.                 + " type = " + type);  
  96.         if (convertView == null) {  
  97.             //选择某一个样式。。  
  98.             switch (type) {  
  99.             case ITEM_TITLE:  
  100.                 convertView = inflater.inflate(R.layout.play_item_title, null);  
  101.                 holder1 = new Holder1(convertView);  
  102.   
  103.                 holder1.play_title.setText(mList.get(position).name);  
  104.   
  105.                 convertView.setTag(holder1);  
  106.                 break;  
  107.             case ITEM_INTRODUCE:  
  108.                 convertView = inflater.inflate(R.layout.paly_item_introduce,  
  109.                         null);  
  110.                 holder2 = new Holder2(convertView);  
  111.   
  112.                 holder2.play_introduce_title  
  113.                         .setText(mList.get(position).address);  
  114.                 convertView.setTag(holder2);  
  115.                 break;  
  116.             default:  
  117.                 break;  
  118.             }  
  119.         } else {  
  120.             switch (type) {  
  121.             case ITEM_TITLE:  
  122.                 holder1 = (Holder1) convertView.getTag();  
  123.                 holder1.play_title.setText(mList.get(position).name);  
  124.                 break;  
  125.             case ITEM_INTRODUCE:  
  126.                 holder2 = (Holder2) convertView.getTag();  
  127.                 holder2.play_introduce_title  
  128.                         .setText(mList.get(position).address);  
  129.                 break;  
  130.   
  131.             default:  
  132.                 break;  
  133.             }  
  134.   
  135.         }  
  136.   
  137.         return convertView;  
  138.     }  
  139.   
  140. }  

代码位置


点击打开链接






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值