Android ListView+image的使用
首先创建layout部局文件xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
android:id="@+id/RelativeLayout01"
android:layout_width="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:paddingBottom="4dip"
android:paddingLeft="12dip">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/ItemImage">
</ImageView> <TextView
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:id="@+id/ItemTitle"
android:layout_toRightOf="@+id/ItemImage"
android:textSize="30dip"
></TextView>
<TextView
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_toRightOf="@+id/ItemImage"
android:layout_below="@+id/ItemTitle"
android:id="@+id/ItemText"
></TextView> </RelativeLayout>
接下来在main.xml文件中布局listView即可这里就不用给源代码了;
在下面一步中导入你想要的png图片存放在drawable中
最后就是我们的.java文件的编写了,我们知道listView需要用到ArrayAdapter——》这个是创建listVIew的一种方法,在这里我们运用ArrayList与SimpleAdapter相结合来创建具有图片的listView
代码如下:
ArrayList<HashMap<String, Object>> mylist = new ArrayList<HashMap<String, Object>>(); //这里的String表示对第二个字段的标题,后面的Object可以扩展为其他类对象
for(int i=0;i<15;i++)
{
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("icon", 这里是图片的id(R.drawable.x1));
map.put("ItemTitle", "标题字段");
map.put("ItemText", "显示文字字段");
mylist.add(map);
}
m_listView.setAdapter(initAdapter()); //这里我们调用initAdapter()函数源码如下
public SimpleAdapter initAdapter(){
//生成适配器,数组===》ListItem
SimpleAdapter mSchedule = new SimpleAdapter(this, //没什么解释
mylist,//数据来源
R.layout.my_layout,//ListItem的XML实现
new String[] {"icon","ItemTitle", "ItemText"},
new int[] {R.id.ItemImage,R.id.ItemTitle,R.id.ItemText});
//添加并且显示
return mSchedule;
}
这里我们还可以通过添加删除
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
menu
.add(0, 0, 0, "添加")
.setIcon(android.R.drawable.ic_media_next);
menu
.add(0, 1, 1, "删除")
.setIcon(android.R.drawable.ic_media_next);
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case 0:
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("icon", R.drawable.x1);
map.put("ItemTitle", "城市");
map.put("ItemText", "天气现象+温度");
mylist.add(map);
m_listView.setAdapter(initAdapter());
break;
case 1:
mylist.remove(m_listView.getSelectedItem());
m_listView.setAdapter(initAdapter());
break;
default:
break;
}
return super.onOptionsItemSelected(item);
}
Android ListView+image的使用的更多相关文章
- android ListView 九大重要属性详细分析、
android ListView 九大重要属性详细分析. 1.android ListView 一些重要属性详解,兄弟朋友可以参考一下. 首先是stackFromBottom属性,这只该属性之后你做好 ...
- Android ListView onItemClick Not Work
Android ListView onItemClick Not Work ListView item中有Button和RadioButton的时候,它的Item点击事件不起作用,需要设置item的属 ...
- 【腾讯Bugly干货分享】Android ListView与RecyclerView对比浅析--缓存机制
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/5811d3e3ab10c62013697408 作者:黄宁源 一,背景 Recy ...
- Android ListView 常用技巧
Android ListView 常用技巧 Android TextView 常用技巧 1.使用ViewHolder提高效率 ViewHolder模式充分利用了ListView的视图缓存机制,避免了每 ...
- Android listview addHeaderView 和 addFooterView 详解
addHeaderView()方法:主要是向listView的头部添加布局addFooterView()方法:主要是向listView的底部添加布局 需要注意的是添加布局的时候应该添加从父容器开始添加 ...
- Android ListView滑动过程中图片显示重复错乱闪烁问题解决
最新内容建议直接访问原文:Android ListView滑动过程中图片显示重复错乱闪烁问题解决 主要分析Android ListView滚动过程中图片显示重复.错乱.闪烁的原因及解决方法,顺带提及L ...
- Android --ListView分页
参考博客:Android ListView分页加载(服务端+android端)Demo 监听OnScrollListener事件 class OnListScrollListener implemen ...
- Android ListView ListActivity PreferenceActivity背景变黑的问题ZT
Android ListView ListActivity PreferenceActivity背景变黑的问题 ListView在滚动时背景会变暗甚至变黑,这个要从Listview的效果说起,默认的L ...
- android listview去掉分割线
1:android listview去掉分割线 1>设置android:divider="@null" 2>android:divider="#0000000 ...
- 【转】android ListView 几个重要属性
android ListView 几个重要属性 分类: Android2012-03-08 19:25 19324人阅读 评论(5) 收藏 举报 listviewandroid活动javalistnu ...
随机推荐
- 选择排序(SelectSorted)
//简单的选择排序public class SelectSorted { public static void main(String[] args) { int[] array={12,24,9,7 ...
- UCloud EIP 你真的懂得如何使用么? - SegmentFault
UCloud EIP 你真的懂得如何使用么? - SegmentFault UCloud EIP 你真的懂得如何使用么?
- oracle REPLACE 函数 介绍
oracle REPLACE 函数是用另外一个值来替代串中的某个值. 例如,可以用一个匹配数字来替代字母的每一次出现.REPLACE 的格式如下所示: REPLACE ( char, search_s ...
- mapreduce 读写lzo文件
1.读lzo文件 需要添加以下代码,并导入lzo相关的jar包 job.setInputFormatClass(LzoTextInputFormat.class); 2.写lzo文件 lzo格式默认 ...
- C语言堆内存管理上出现的问题,内存泄露,野指针使用,非法释放指针
C语言堆内存管理上出现的问题,内存泄露,野指针使用,非法释放指针 (1)开辟的内存没有释放,造成内存泄露 (2)野指针被使用或释放 (3)非法释放指针 (1)开辟的内存没有释放.造成内存泄露,以下的样 ...
- [转] npm命令概述
PS:问题,nvm找不到正确的下载server NVM_NODEJS_ORG_MIRROR=http://nodejs.org/dist nvm ls-remote NVM_NODEJS_ORG_MI ...
- float:left 与display:inline的具体区别?
设了float:left的元素允许它的右边存在任何元素同行显示,不论是内联元素还是块元素.但它的左边还是不允许存在任何元素与之同行显示,哪怕其它的元素的代码在前,除非也给前面的元素加上float:le ...
- Eclipse / Android : “Errors running builder 'Android Pre Compiler' on project…”
Errors occurred during the build. Errors running builder 'Android Resource Manager' on project 'hell ...
- WPF DataGrid某列使用多绑定后该列排序失效,列上加入 SortMemberPath 设置即可.
WPF DataGrid某列使用多绑定后该列排序失效 2011-07-14 10:59hdongq | 浏览 1031 次 悬赏:20 在wpf的datagrid中某一列使用了多绑定,但是该列排序失 ...
- android MediaCodec 音频编解码的实现——转码
原文地址:http://blog.csdn.net/tinsanmr/article/details/51049179 从今天开始 每周不定期更新博客,把这一周在工作与学习中遇到的问题做个总结.俗话说 ...