ListView是什么?

ListView是一个 数据控件,可以展示从数据库中读取的数据。是.net3.5的新控件。

它比gridview更灵活,而且支持多种模板,支持分页。


文章地址 http://www.cnblogs.com/mmyblogs/p/6058322.html(转载请保留)


接下来我就为大家演示一个简单的利用SimpleAdapter实现ListView及其点击事件的例子。

main.xml主页面布局

<?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"
android:gravity="center"> <ListView
android:id="@+id/lv"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
</LinearLayout>

list_item.xml每个item的排布

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="60dp"
android:orientation="horizontal"> <LinearLayout
android:layout_width="60dp"
android:layout_height="60dp"> <ImageView
android:id="@+id/image"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/> </LinearLayout> <LinearLayout
android:layout_width="fill_parent"
android:layout_height="60dp"
android:orientation="vertical"
android:gravity="center"> <TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="25sp"/> <TextView
android:id="@+id/context"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="15sp"/> </LinearLayout> </LinearLayout>

MainActivity.java核心代码

import android.app.Activity;
import android.os.Bundle;
import android.widget.ListView;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.HashMap;
import android.widget.SimpleAdapter;
import android.view.View;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AdapterView;
import android.widget.Adapter;
import android.widget.Toast; public class MainActivity extends Activity
{ @Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main); List<Map<String,Object>>datalist=new ArrayList<Map<String,Object>>();
ListView lv=(ListView) findViewById(R.id.lv); Map<String,Object> map1=new HashMap<String,Object>();
map1.put("image",R.mipmap.ic_launcher);
map1.put("title","AIDE资源");
map1.put("context","AIDE 资源 分享");
Map<String,Object> map2=new HashMap<String,Object>();
map2.put("image",R.mipmap.ic_launcher);
map2.put("title","了解AIDE");
map2.put("context","AIDE 了解 分享");
Map<String,Object> map3=new HashMap<String,Object>();
map3.put("image",R.mipmap.ic_launcher);
map3.put("title","玩转AIDE");
map3.put("context","AIDE 玩转 分享");
Map<String,Object> map4=new HashMap<String,Object>();
map4.put("image",R.mipmap.ic_launcher);
map4.put("title","控件之TextView");
map4.put("context","AIDE TextView 分享"); datalist.add(map1);
datalist.add(map2);
datalist.add(map3);
datalist.add(map4); lv.setAdapter(new SimpleAdapter(this,datalist,R.layout.list_item,new String[]{"image","title","context"},new int[]{R.id.image,R.id.title,R.id.context}));
lv.setOnItemClickListener(new OnItemClickListener(){
//list点击事件
@Override
public void onItemClick(AdapterView<?> p1, View p2, int p3, long p4)
{
// TODO: Implement this method
switch(p3){
case 0://第一个item
Toast.makeText(MainActivity.this,"AIDE 资源 分享",Toast.LENGTH_SHORT).show();
break;
case 1://第二个item
Toast.makeText(MainActivity.this,"AIDE 了解 分享",Toast.LENGTH_SHORT).show();
break;
case 2://第三个item
Toast.makeText(MainActivity.this,"AIDE 玩转 分享",Toast.LENGTH_SHORT).show();
break;
}
} }); }
}

以上就是全部代码,下面是效果图

Android简单的ListViewDemo及每个控件的点击事件的更多相关文章

  1. Android 使用代码主动去调用控件的点击事件(模拟人手去触摸控件)

    使用代码主动去调用控件的点击事件(模拟人手去触摸控件) //View 可以是LinearLayout,Button,TextView View.performClick();

  2. Android监听Button和ImageButton控件的点击事件

    一.onClick事件 Button和ImageButton都有一个onClick事件,通过自身的.setOnClickListener(OnClickListener)方法添加点击事件 所有的控件都 ...

  3. android中RecyclerView控件实现点击事件

    RecyclerView控件实现点击事件跟ListView控件不同,并没有提供类似setOnItemClickListener()这样的注册监听器方法,而是需要自己给子项具体的注册点击事件. 本文的例 ...

  4. 【MAUI】为 Label、Image 等控件添加点击事件

    一.前言 已经习惯了 WPF.WinForm 中"万物皆可点击"的方式. 但是在 MAUI 中却不行了. 在 MAUI 中,点击.双击的效果,是需要通过"手势识别器&qu ...

  5. Android技能杂谈——如何优雅的处理控件的点击事件

    首先分享一个最佳实践: 大家开发复杂一些的Android应用的时候常常会写一个BaseActivity或者BaseFragment,里面写上一些基本而公用的方法,比如监听网络状况.弹出对话框.设置ac ...

  6. Button控件的点击事件

    Java的代码 主要重点: findViewById(); OnClickListener() package com.example.admin.myapplication; import andr ...

  7. 继承UIView的子控件添加点击事件

    UITapGestureRecognizer*tapGesture = [[UITapGestureRecognizer alloc]initWithTarget:selfaction:@select ...

  8. listview适配器中的控件的点击事件并传值

    @Override public View getView(final int position, View convertView, ViewGroup parent) { // TODO Auto ...

  9. ios 给移动的控件添加点击事件

    前言: 给一个UIView做移动动画,虽然看起来frame在持续改变,但是它的frame已经是最终值了. 也就是说表面看到的动画都是假象,它的真实位置已经是固定的了.所以只有点击在他的真实frame范 ...

随机推荐

  1. 用Qt写软件系列五:一个安全防护软件的制作(1)

    引言 又有许久没有更新了.Qt,我心爱的Qt,为了找工作不得不抛弃一段时间,业余时间来学一学了.本来计划要写一系列关于Qt组件美化的博文,但是写了几篇之后就没坚持下去了.技术上倒是问题不大,主要是时间 ...

  2. ASP.NET MVC显示HTML字符串

    一些html经HtmlEncode后,如“<span>测试数据</span>”.现需要把这些内容正常显示于asp.net mvc的视图内. 举个例子来解决与说明,先创建一个mo ...

  3. 关于 Servlet 和 Web

       文中也只是对Servlet和Web作简单的了解,有个初步的认识,深入的内容有待于进一步去研究. T. T _ . _ Servlet     Servlet(Server Applet),全称J ...

  4. iOS阶段学习第26天笔记(UILabel的介绍)

    iOS学习(UI)知识点整理 一.关于UILabel的使用介绍 1)概念:UILabel是一个继承自UIView的用于展示文本信息的控件 2)UI中所有的控件都继承自UIView 即UIView 是U ...

  5. iOS 阶段学习第八天笔记(指针)

    iOS学习(C语言)知识点整理 一.指针 1)概念:存储变量的地址的一个变量. 2) 数据存储类型分析 1.text (代码段) :存储二进制的可执行代码 2.data(初始化的数据段) 存储初始化的 ...

  6. 如何设计一个 App 的注册登录流程?

    移 动设备发力之前的登录方式很简单:用户名/邮箱+密码+确认密码,所有的用户登录注册都是围绕着邮箱来做.随着移动设备和社交网络的普及,邮箱不再是唯 一,渐渐的出现了微博,QQ,微信等第三方登录方式,手 ...

  7. 关于Class.getResource和ClassLoader.getResource的路径问题

    Java中取资源时,经常用到Class.getResource和ClassLoader.getResource,这里来看看他们在取资源文件时候的路径问题. Class.getResource(Stri ...

  8. Android自定义surfaceView显示多张图片

    我自定义了一个surfaceview,我在上面绘制多张图片,让它能够上下方滚显示图片,但是onMeasure()方法在重写的时候遇到了问题,不知道如何设置它的高度, public class MySu ...

  9. 原生态的ajax 及json和gson学习资源

    @RequestMapping(value = "/{id}/view") @jsobody public String viewProject( @PathVariable(&q ...

  10. CodeBlock

    CodeBlock官网是: http://www.codeblocks.org/ 选择Download the binary release: 根据自己电脑的情况选择想要的版本:(以博主电脑为例,wi ...