设为首页 加入收藏

TOP

android listview多视图嵌套多视图(一)
2017-10-12 11:34:20 】 浏览:961
Tags:android listview

笔记,listview视图总结

  1 public class HomeEduMoreAdapter extends BaseAdapter {
  2 
  3     private final String TAG = "HomeEduMoreAdapter";
  4 
  5     private static final int TYPE_COMMON = 0;
  6     private static final int TYPE_BL = 1;
  7     private static final int TYPE_NONE = 2;
  8     private static final int TYPE_THREE = 3;
  9     private static final int TYPE_QUESTION = 4;
 10     private int TYPE_COUNT = 5;
 11 
 12     private LayoutInflater inflater;
 13     private List<HomeEdus> list;
 14     private Context context;
 15     private DisplayImageOptions options;
 16     private ImageLoadingListener animateFirstListener = new AnimateFirstDisplayListener();
 17 
 18     public HomeEduMoreAdapter(Context context, List<HomeEdus> objects) {
 19         this.context = context;
 20         // groupUserDao = new GroupUserDao(context);
 21         inflater = LayoutInflater.from(context);
 22         list = objects;
 23         options = new DisplayImageOptions.Builder().cacheInMemory(true)
 24                 .imageScaleType(ImageScaleType.IN_SAMPLE_INT)
 25                 .bitmapConfig(Bitmap.Config.RGB_565).cacheOnDisk(true)
 26                 .showImageOnLoading(R.drawable.icon_default)// 设置图片在下载期间显示的图片
 27                 .showImageForEmptyUri(R.drawable.icon_default)// 设置图片Uri为空或是错误的时候显示的图片
 28                 .showImageOnFail(R.drawable.icon_default)// 设置图片加载/解码过程中错误时候显示的图片
 29                 .considerExifParams(true).build();
 30     }
 31 
 32     @Override
 33     public int getCount() {
 34         // TODO Auto-generated method stub
 35         return list.size();
 36     }
 37 
 38     @Override
 39     public int getViewTypeCount() {
 40         // TODO Auto-generated method stub
 41         return TYPE_COUNT;
 42     }
 43 
 44     @Override
 45     public HomeEdus getItem(int position) {
 46         // TODO Auto-generated method stub
 47         return list.get(position);
 48     }
 49 
 50     @Override
 51     public long getItemId(int postion) {
 52         // TODO Auto-generated method stub
 53         return postion;
 54     }
 55 
 56     @Override
 57     public int getItemViewType(int position) {
 58         // TODO Auto-generated method stub
 59         HomeEdus edus = getItem(position);
 60         
 61         String type = edus.getType();// 菜单类型
 62         int result = TYPE_COMMON;
 63         switch (type) {
 64         case "hx":
 65             result = TYPE_COMMON;
 66             break;
 67         case "wd":
 68             if (edus.getPic1() == null || edus.getPic1().equals("")) {
 69                 result = TYPE_QUESTION;
 70             }else {
 71                 result = TYPE_COMMON;
 72             }
 73             
 74             break;
 75         case "jt":
 76             result = TYPE_COMMON;
 77             break;
 78         case "bl":
 79             result = TYPE_BL;
 80             break;
 81         default:
 82             String jx = edus.getType();// 精选内容类型
 83             switch (jx) {
 84             default:
 85                 Integer imgNum = Integer.parseInt(edus.getImgNum());
 86                 if (imgNum != null && imgNum > 0 && imgNum < 3) {
 87                     result = TYPE_COMMON;
 88                 } else if (imgNum != null && imgNum >= 3) {
 89                     result = TYPE_THREE;
 90                 } else {
 91                     result = TYPE_NONE;
 92                 }
 93 
 94                 break;
 95             }
 96 
 97             break;
 98         }
 99         return result;
100     }
101 
102     @Override
103     public View getView(int position, View convertView, ViewGroup parent) {
104         // TODO Auto-generated method stub
105         final HomeEdus model = getItem(position);
106         int type = getItemViewType(position);
107         final ViewHolder holder;
108 
109         if (convertView == null) {
110             holder = new ViewHolder();
111             WindowManager manager = (WindowManager) context
112                     .getSystemService(Context.WINDOW_SERVICE);
113             int width = manager.getDefaultDisplay().getWidth();
11
首页 上一页 1 2 3 4 5 下一页 尾页 1/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇安卓应用的界面编程(4) 下一篇android listview多视图嵌套多视图

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目