首先创建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);
}

最新文章

  1. SSH框架整合(XML)
  2. iOS开发之调用系统打电话发短信接口以及程序内发短信
  3. AlertDialog使用时遇到问题
  4. jsp&amp;Sevelet基础详解
  5. 上海邮政EMS海关清关(个人) 流程
  6. innerHeight与clientHeight、innerWidth与clientWidth、scrollLeft与pageXOffset等属性
  7. BZOJ 1095: [ZJOI2007]Hide 捉迷藏(线段树维护括号序列)
  8. 解决VS2015 VBCSCompiler.exe 占用CPU100%的问题
  9. Ubuntu16.04 install android-studio-ide-162.4069837-linux
  10. 在SpringBoot中配置定时任务
  11. [Micropython]TPYBoard v102 DIY照相机
  12. Menu显示三个点,不显示内容
  13. 同步调用异步方法how-would-i-run-an-async-taskt-method-synchronously
  14. go与c语言的互操作
  15. delphi 中如何处理“幽灵”、“熔断”?(转载)
  16. vue-cli 使用Mint-UI
  17. 安装redis出现cc adlist.o /bin/sh:1:cc:not found
  18. 用多个class选择元素
  19. 高可用Mysql架构_Mycat集群部署(HAProxy + 两台Mycat+Mysql双主双从)
  20. webstrom 配置eslint 自动修复错误

热门文章

  1. mac上的键盘生活——quicksliver
  2. 【PHP】php+txt实现网页计数器(限IP统计方式和不限IP统计方式)
  3. codeforces 400D Dima and Bacteria 并查集+floyd
  4. java 实现 DES加密 解密算法
  5. JAVA wait(), notify(),sleep详解
  6. ng-if与ng-show、ng-hide指令的区别和注意事项
  7. Five ways to maximize Java NIO and NIO.2--reference
  8. Scope Chain(作用域链)
  9. 使用JExcel导出excel文件
  10. Markdown写接口文档,自动添加TOC