Android ListView(item)条目中添加广告(其他布局)
2017-01-10 18:02
232 查看
Android ListView(item)条目中添加广告(其他布局)也就是布局的改变而已。
好了,思想+代码。
adapter代码:
public class NewsAdapter extends BaseAdapter { private Context context; private List<NewsEntity> entityList; private ImageLoader imageLoader; private NewsEntity newsEntity; private AdvEntity advEntity; private int v; public NewsAdapter() { } public NewsAdapter(Context context, List<NewsEntity> entityList) { this.context=context; this.entityList=entityList; imageLoader=new ImageLoader(); } @Override public int getCount() { return entityList.size(); } @Override public Object getItem(int position) { return entityList.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder viewHolder; if (convertView==null){ viewHolder=new ViewHolder(); if (position==5){ convertView=View.inflate(context,R.layout.advertisement_item,null); viewHolder.configAdv= (ImageView) convertView.findViewById(R.id.config_adv_btn); viewHolder.sureAdv= (ImageView) convertView.findViewById(R.id.sure_adv_btn); }else{ convertView=View.inflate(context, R.layout.item_news,null); viewHolder.title= (TextView) convertView.findViewById(R.id.title_news); viewHolder.contact= (TextView) convertView.findViewById(R.id.contact_news); viewHolder.ctime= (TextView) convertView.findViewById(R.id.ctime_news); viewHolder.image= (ImageView) convertView.findViewById(R.id.image_news); } convertView.setTag(viewHolder); }else { viewHolder= (ViewHolder) convertView.getTag(); } if (position==5){ viewHolder.sureAdv.setImageResource(R.mipmap.two); }else{ newsEntity= (NewsEntity) getItem(position); viewHolder.title.setText(newsEntity.getTitle()); viewHolder.contact.setText(newsEntity.getContact()); viewHolder.ctime.setText(newsEntity.getCtime()); viewHolder.image.setImageResource(R.mipmap.ic_launcher); String url=entityList.get(position).image; viewHolder.image.setTag(url); imageLoader.showImageByAsyncTask(viewHolder.image,url); } return convertView; } class ViewHolder{ TextView title; TextView contact; TextView ctime; ImageView image; ImageView sureAdv; ImageView configAdv; } }
注意:关键代码就是其中的
if (position==5){ convertView=View.inflate(context,R.layout.advertisement_item,null); viewHolder.configAdv= (ImageView) convertView.findViewById(R.id.config_adv_btn); viewHolder.sureAdv= (ImageView) convertView.findViewById(R.id.sure_adv_btn); }else{ convertView=View.inflate(context, R.layout.item_news,null); viewHolder.title= (TextView) convertView.findViewById(R.id.title_news); viewHolder.contact= (TextView) convertView.findViewById(R.id.contact_news); viewHolder.ctime= (TextView) convertView.findViewById(R.id.ctime_news); viewHolder.image= (ImageView) convertView.findViewById(R.id.image_news); } convertView.setTag(viewHolder); }else { viewHolder= (ViewHolder) convertView.getTag(); } if (position==5){ viewHolder.sureAdv.setImageResource(R.mipmap.two); }else{ newsEntity= (NewsEntity) getItem(position); viewHolder.title.setText(newsEntity.getTitle()); viewHolder.contact.setText(newsEntity.getContact()); viewHolder.ctime.setText(newsEntity.getCtime()); viewHolder.image.setImageResource(R.mipmap.ic_launcher); String url=entityList.get(position).image; viewHolder.image.setTag(url); imageLoader.showImageByAsyncTask(viewHolder.image,url); }
判断条目position,改变布局。
注意:这里我是直接viewHolder.sureAdv.setImageResource(R.mipmap.two);上去的,也可以传参数加载。
思想就是,找到要换布局的条目potion,判断改变布局,然后添加数据。注意:bug解决
Android 解决ListView插入其他布局条目(item或广告)删掉数据的问题http://blog.csdn.net/aierjun/article/details/54317796
相关文章推荐
- Android Index
- 操作系统安全机制(2)
- 总结和分析几种判断RecyclerView到达底部的方法
- Android 状态栏设置
- Android volley 解析(三)之文件上传篇
- Android-25种开源炫酷动画框架
- Android Volley解析(二)之表单提交篇
- Android 中获取控件宽和高的方法(详细解析)
- android-cmake环境变量
- Android图片选择器、多选框架
- Android 百度地图api地理编码与逆地理编码
- Android Volley源码 解析(一)之GET、POST请求篇
- Android抓取崩溃日志
- 一个关于android旋转屏幕界面的方法
- Android中的asset和raw文件夹
- Android 底部弹出窗popuwindows含有list动态控制显示内容高度
- Android——仿ios底部弹出选择框
- Android ViewPager Fragment 简单应用
- Android Studio第二十九期 - RecycleView的表格形式
- Android Studio第二十九期 - RecycleView的表格形式