Android listview 的应用
ListView作为Android最常用但是却最难用的控件之一,有很多神奇的用法.我之前也有写过一个例子,稍微不那么简单了一点.
[Android原生item的伸缩效果]:http://www.cnblogs.com/stareblankly/p/4958062.html
- 简单的ListView的应用.
private Integer[] data={1,1,1,1,1,1,1,1,1,1,1,1,1,1,1};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_NO_TITLE);setContentView(R.layout.activity_main);ArrayAdapter<Integer> adapter=new ArrayAdapter<Integer>(MainActivity.this, android.R.layout.simple_list_item_1,data);((ListView)findViewById(R.id.lv)).setAdapter(adapter);}
- 定制ListView界面
1.我们新建一个furit_item.xml作为我们自定义listview的item.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical" ><ImageViewandroid:id="@+id/furit_image"android:layout_width="wrap_content"android:layout_height="wrap_content" /><TextViewandroid:id="@+id/fruit_name"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center"android:layout_marginLeft="10dp" /></LinearLayout>
2.然后我们新建一个Furit.class作为数据适配的实体类.
public class Fruit {private String name;private int imageId;public String getName() {return name;}public void setName(String name) {this.name = name;}public int getImageId() {return imageId;}public void setImageId(int imageId) {this.imageId = imageId;}public Fruit(String name, int imageId) {super();this.name = name;this.imageId = imageId;}
}
3.新建一个FruitAdapter.class适配器用来适配listview.
public class FruitAdapter extends ArrayAdapter<Fruit>{private int resourceid;public FruitAdapter(Context context, int textViewResourceId,List<Fruit> objects) {super(context,textViewResourceId, objects);resourceid=textViewResourceId;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {Fruit fruit=getItem(position);View view=LayoutInflater.from(getContext()).inflate(resourceid, null);TextView tv=(TextView) view.findViewById(R.id.fruit_name);ImageView iv=(ImageView) view.findViewById(R.id.furit_image);iv.setImageResource(fruit.getImageId());tv.setText(fruit.getName());return view;}
}
4.然后初始化我们要显示的数据.
private List<Fruit> fruitList=new ArrayList<Fruit>();Fruit fruit=new Fruit("1", R.drawable.ic_launcher);
fruitList.add(fruit);
fruit=new Fruit("2", R.drawable.ic_launcher);
fruitList.add(fruit);
fruit=new Fruit("3", R.drawable.ic_launcher);
fruitList.add(fruit);
......
5.最后就只剩下使用了.
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);init();FruitAdapter adapter=new FruitAdapter(this, R.layout.fruit_item, fruitList);((ListView)findViewById(R.id.lv)).setAdapter(adapter);}
- ListView的item的点击事件
((ListView)findViewById(R.id.lv)).setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> parent, View view,int position, long id) {Fruit fruit=fruitList.get(position);Toast.makeText(MainActivity.this, fruit.getName(), Toast.LENGTH_SHORT).show();}});
转载于:https://www.cnblogs.com/stareblankly/p/5057340.html
Android listview 的应用相关推荐
- android ListView包含Checkbox滑动时状态改变
题外话: 在xamarin android的开发中基本上所有人都会遇到这个小小的坎,的确有点麻烦,当时我也折腾了好一半天,如果你能看到这篇博客,说明你和我当初也是一样的焦灼,如果你想解决掉这个小小的坎 ...
- Android ListView 自定义背景后 滚动时的背景变黑问题
ListView是常用的显示控件,默认背景是和系统窗口一样的透明色,如果给ListView加上背景图片,或者背景颜色时,滚动时listView会黑掉,原因是,滚动时,列表里面的view重绘时,用的依旧 ...
- Android listview viewholder
2019独角兽企业重金招聘Python工程师标准>>> Android ListView ViewHolder 利用adapter中的getView的 contentView 的复用 ...
- Android ListView常用用法
ListView是比较常用的控件,但一直都觉得创建ListView步骤有点繁琐,故在此总结一下,方便查阅. 程序效果是实现一个ListView,ListView里面有标题,内容和图片,并加入点击和长按 ...
- 【腾讯Bugly干货分享】Android ListView与RecyclerView对比浅析--缓存机制
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/5811d... 作者:黄宁源 一,背景 RecyclerView是谷歌官方出的一 ...
- Android ListView异步加载图片乱序问题,原因分析及解决方案
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/45586553 在Android所有系统自带的控件当中,ListView这个控件算是 ...
- Android ListView 圆角
android ListView实现圆角实例教程二 Android框架浅析之锁屏(Keyguard)机制原理 http://www.eoeandroid.com/thread-181604-1-1.h ...
- Android listView 去掉header和footer中的分割线
Android listView 去掉header和footer中的分割线 方法一: 在listView中加上android:headerDividersEnabled="false&quo ...
- android ListView布局之二(是用simpleAdapter绑定数据)
main.xml主布局文件,代码 <?xml version="1.0" encoding="utf-8"?> <LinearLayout x ...
- android listview 列加id,Android实战开发之ListView同一个item显示2列的实现方法
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Android实战开发中,ListView控件用途十分广泛,各种自定义控件多种多样.当项目要求实现一个2列的商品列表形式的界面,我们首先肯定想到用List ...
最新文章
- 技术总监的反思录:我是如何失去团队掌控的?
- SCOM发送邮件通知
- FLEX 运行 空白
- track文件 什么是git_git常用命令
- 【HDU 1711】Number Sequence(裸KMP算法)
- JavaWeb学习总结(二):Tomcat服务器学习和使用(一)
- 吴玉禄他的机器人_中国人— 我们村的机器人
- 后台扫描工具 - 御剑(珍藏版)附下载
- 菁搜FTP搜索引擎 photo2
- CxImage功能强大的图形处理程序
- 腾讯云短信服务报错FailedOperation.TemplateIncorrectOrUnapproved
- c语言int作用,C语言中的int max(int x,int y) 究竟有何作用?
- 怎样检测和应对数据集的Outliers
- Qt设置按钮背景图片
- 美摄科技推出桌面端专业视频编辑解决方案——美映PC版
- USB 协议 (三) 基础知识
- 纯C语言日志类库 Zlog
- JavaScript入门小试,水仙花数的辨别以及再深入学习一些定义区间。
- JAVA实现把PPT转PDF的方法
- 在win10下安装eclipse