GridView设置不同的item(布局)
来源:互联网 发布:乐之网络 编辑:程序博客网 时间:2024/05/22 15:43
package com.example.uppf.adapter;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import android.content.Context;
import android.os.Message;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.bumptech.glide.Glide;
import com.example.uppf.R;
import com.example.uppf.beans.CarTypeBean;
import com.example.uppf.imagefig.ImageLoaders;
import com.example.uppf.util.CCC;
public class EnterAppListAdapter extends BaseAdapter{
private Context context;
ArrayList<CarTypeBean> list;
ImageLoaders loaders;
CarTypeBean bean;
int type;
int a;
public EnterAppListAdapter(Context context,ImageLoaders loaders,ArrayList<CarTypeBean> list){
this.context=context;
this.loaders=loaders;
this.list=list;
}
@Override
public int getItemViewType(int position) {
System.out.println(list.size());
int p = position%4;
if (p==0) {
return CCC.a1;
}
if (p==1) {
return CCC.a2;
}
if (p==2) {
return CCC.a3;
}
if (p==3) {
return CCC.a4;
}
return CCC.a4;
}
@Override
public int getViewTypeCount() {
// TODO Auto-generated method stub
return 5;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return list.get(position);
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View converview, ViewGroup arg2) {
// TODO Auto-generated method stub
// a=list.size()/4;
// final int kkk=a*4;
ViewHlder vh = null;
ViewHlder2 vh2 = null;
ViewHlder3 vh3 = null;
ViewHlder4 vh4 = null;
type = getItemViewType(position);
if (converview==null) {
switch (type) {
case CCC.a1:
converview=LayoutInflater.from(context).inflate(R.layout.adapter_enterapplist_item, null);
vh=new ViewHlder();
vh.iv=(ImageView) converview.findViewById(R.id.iv_item);
vh.l1=(LinearLayout) converview.findViewById(R.id.ll_adapter1);
converview.setTag(vh);
break;
case CCC.a2:
converview=LayoutInflater.from(context).inflate(R.layout.adapter_enterapplist_item2, null);
vh2=new ViewHlder2();
vh2.iv2=(ImageView) converview.findViewById(R.id.iv_item2);
vh2.l2=(LinearLayout) converview.findViewById(R.id.ll_adapter2);
converview.setTag(vh2);
break;
case CCC.a3:
converview=LayoutInflater.from(context).inflate(R.layout.adapter_enterapplist_item3, null);
vh3=new ViewHlder3();
vh3.iv3=(ImageView) converview.findViewById(R.id.iv_item3);
vh3.l3=(LinearLayout) converview.findViewById(R.id.ll_adapter3);
converview.setTag(vh3);
break;
case CCC.a4:
converview=LayoutInflater.from(context).inflate(R.layout.adapter_enterapplist_item4, null);
vh4=new ViewHlder4();
vh4.iv4=(ImageView) converview.findViewById(R.id.iv_item4);
vh4.l4=(LinearLayout) converview.findViewById(R.id.ll_adapter4);
converview.setTag(vh4);
break;
default:
break;
}
// vh.tv=(TextView) converview.findViewById(R.id.tv);
}else {
switch (type) {
case CCC.a1:
vh=(ViewHlder) converview.getTag();
break;
case CCC.a2:
vh2=(ViewHlder2) converview.getTag();
break;
case CCC.a3:
vh3=(ViewHlder3) converview.getTag();
break;
case CCC.a4:
vh4=(ViewHlder4) converview.getTag();
break;
default:
break;
}
}
switch (position) {
case 0:
vh.l1.setBackgroundResource(R.drawable.kzj);
break;
case 1:
vh2.l2.setBackgroundResource(R.drawable.kzj2);
break;
case 2:
vh3.l3.setBackgroundResource(R.drawable.kzj3);
break;
case 3:
vh4.l4.setBackgroundResource(R.drawable.kzj4);
break;
default:
break;
}
switch (type) {
case CCC.a1:
bean=list.get(position);
Glide.with(context).load(bean.getCar_logo()).into(vh.iv);
bean.setType(0);
break;
case CCC.a2:
bean=list.get(position);
Glide.with(context).load(bean.getCar_logo()).into(vh2.iv2);
bean.setType(1);
break;
case CCC.a3:
bean=list.get(position);
Glide.with(context).load(bean.getCar_logo()).into(vh3.iv3);
bean.setType(2);
break;
case CCC.a4:
bean=list.get(position);
Glide.with(context).load(bean.getCar_logo()).into(vh4.iv4);
bean.setType(3);
break;
default:
break;
}
return converview;
}
class ViewHlder{
ImageView iv;
LinearLayout l1;
}
class ViewHlder2{
ImageView iv2;
LinearLayout l2;
}
class ViewHlder3{
ImageView iv3;
LinearLayout l3;
}
class ViewHlder4{
ImageView iv4;
LinearLayout l4;
}
}
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import android.content.Context;
import android.os.Message;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.bumptech.glide.Glide;
import com.example.uppf.R;
import com.example.uppf.beans.CarTypeBean;
import com.example.uppf.imagefig.ImageLoaders;
import com.example.uppf.util.CCC;
public class EnterAppListAdapter extends BaseAdapter{
private Context context;
ArrayList<CarTypeBean> list;
ImageLoaders loaders;
CarTypeBean bean;
int type;
int a;
public EnterAppListAdapter(Context context,ImageLoaders loaders,ArrayList<CarTypeBean> list){
this.context=context;
this.loaders=loaders;
this.list=list;
}
@Override
public int getItemViewType(int position) {
System.out.println(list.size());
int p = position%4;
if (p==0) {
return CCC.a1;
}
if (p==1) {
return CCC.a2;
}
if (p==2) {
return CCC.a3;
}
if (p==3) {
return CCC.a4;
}
return CCC.a4;
}
@Override
public int getViewTypeCount() {
// TODO Auto-generated method stub
return 5;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return list.get(position);
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View converview, ViewGroup arg2) {
// TODO Auto-generated method stub
// a=list.size()/4;
// final int kkk=a*4;
ViewHlder vh = null;
ViewHlder2 vh2 = null;
ViewHlder3 vh3 = null;
ViewHlder4 vh4 = null;
type = getItemViewType(position);
if (converview==null) {
switch (type) {
case CCC.a1:
converview=LayoutInflater.from(context).inflate(R.layout.adapter_enterapplist_item, null);
vh=new ViewHlder();
vh.iv=(ImageView) converview.findViewById(R.id.iv_item);
vh.l1=(LinearLayout) converview.findViewById(R.id.ll_adapter1);
converview.setTag(vh);
break;
case CCC.a2:
converview=LayoutInflater.from(context).inflate(R.layout.adapter_enterapplist_item2, null);
vh2=new ViewHlder2();
vh2.iv2=(ImageView) converview.findViewById(R.id.iv_item2);
vh2.l2=(LinearLayout) converview.findViewById(R.id.ll_adapter2);
converview.setTag(vh2);
break;
case CCC.a3:
converview=LayoutInflater.from(context).inflate(R.layout.adapter_enterapplist_item3, null);
vh3=new ViewHlder3();
vh3.iv3=(ImageView) converview.findViewById(R.id.iv_item3);
vh3.l3=(LinearLayout) converview.findViewById(R.id.ll_adapter3);
converview.setTag(vh3);
break;
case CCC.a4:
converview=LayoutInflater.from(context).inflate(R.layout.adapter_enterapplist_item4, null);
vh4=new ViewHlder4();
vh4.iv4=(ImageView) converview.findViewById(R.id.iv_item4);
vh4.l4=(LinearLayout) converview.findViewById(R.id.ll_adapter4);
converview.setTag(vh4);
break;
default:
break;
}
// vh.tv=(TextView) converview.findViewById(R.id.tv);
}else {
switch (type) {
case CCC.a1:
vh=(ViewHlder) converview.getTag();
break;
case CCC.a2:
vh2=(ViewHlder2) converview.getTag();
break;
case CCC.a3:
vh3=(ViewHlder3) converview.getTag();
break;
case CCC.a4:
vh4=(ViewHlder4) converview.getTag();
break;
default:
break;
}
}
switch (position) {
case 0:
vh.l1.setBackgroundResource(R.drawable.kzj);
break;
case 1:
vh2.l2.setBackgroundResource(R.drawable.kzj2);
break;
case 2:
vh3.l3.setBackgroundResource(R.drawable.kzj3);
break;
case 3:
vh4.l4.setBackgroundResource(R.drawable.kzj4);
break;
default:
break;
}
switch (type) {
case CCC.a1:
bean=list.get(position);
Glide.with(context).load(bean.getCar_logo()).into(vh.iv);
bean.setType(0);
break;
case CCC.a2:
bean=list.get(position);
Glide.with(context).load(bean.getCar_logo()).into(vh2.iv2);
bean.setType(1);
break;
case CCC.a3:
bean=list.get(position);
Glide.with(context).load(bean.getCar_logo()).into(vh3.iv3);
bean.setType(2);
break;
case CCC.a4:
bean=list.get(position);
Glide.with(context).load(bean.getCar_logo()).into(vh4.iv4);
bean.setType(3);
break;
default:
break;
}
return converview;
}
class ViewHlder{
ImageView iv;
LinearLayout l1;
}
class ViewHlder2{
ImageView iv2;
LinearLayout l2;
}
class ViewHlder3{
ImageView iv3;
LinearLayout l3;
}
class ViewHlder4{
ImageView iv4;
LinearLayout l4;
}
}
0 0
- GridView设置不同的item(布局)
- Android为ListView的Item设置不同的布局
- Android为ListView的Item设置不同的布局
- Android为ListView的Item设置不同的布局
- Android为ListView的Item设置不同的布局
- getItemViewType为Listview的item设置不同的布局
- 给Recyclerview的item设置不同布局的Adapter
- android实现界面左右滑动(GridView动态设置item,支持每个item按某个属性排序来显示在不同的界面)
- android实现界面左右滑动(GridView动态设置item,支持每个item按某个属性排序来显示在不同的界面)
- android实现界面左右滑动(GridView动态设置item,支持每个item按某个属性排序来显示在不同的界面)
- Andriod之Adapter的getViewTypeCount和getItemViewType为Listview的item设置不同的布局
- listview不同的项目布局(item layout)
- ListView的每个Item都不同布局
- 实现listView的不同布局item
- ListView item加载不同的布局
- ListView加载不同Item布局的问题
- CoordinatorLayout +RecyclerView+加载不同布局的item
- listView的item显示不同布局
- 编译器科谱
- 浅谈HTTP中Get与Post的区别
- Android 技术目标:全栈工程师
- React—Native开发之原生模块向JavaScript发送事件
- 有趣的JavaScript原生数组函数
- GridView设置不同的item(布局)
- 第九周—大帆玩LOL
- 点饭开发日志 2016-10-09
- 2016/10/28
- Android复习之旅--常用布局
- 二叉树的遍历 c++标准栈实现
- Linux环境下Python的安装过程
- 初学编程,该注意的细枝末叶
- ViewFlow嵌套在ViewPager事件冲突的解决