android ListView 例子

android ListView 例子ListView是比较常用的控件之一,在这里总结一下,方便查阅。程序效果是实现一个ListView,ListView里面有标题、内容和图片,并加入单击和长按响应。步骤:1.首先在activity_main.xml中定义一个ListView。

大家好,又见面了,我是你们的朋友全栈君。

ListView是比较常用的控件之一,在这里总结一下,方便查阅。

程序效果是实现一个ListView,ListView里面有标题、内容和图片,并加入单击和长按响应。

android ListView 例子android ListView 例子

步骤:

1.首先在activity_main.xml中定义一个ListView。

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

2.定义ListView每个item的Layout,用RelativeLayout实现:list_items.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingBottom="4dp"
    android:paddingLeft="12dp"
    android:paddingRight="12dp" >

    <ImageView
        android:id="@+id/ItemImage"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_alignParentRight="true"
        android:paddingTop="10dp" />

    <TextView
        android:id="@+id/ItemTitle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="TextView01"
        android:textSize="20dp" />

    <TextView
        android:id="@+id/ItemText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/ItemTitle"
        android:text="TextView02" />

</RelativeLayout>

3.最后在MainActivity里面调用和加入Listener:

package com.chay.listviewtest;import java.util.ArrayList;import java.util.HashMap;import android.os.Bundle;import android.app.Activity;import android.view.ContextMenu;import android.view.MenuItem;import android.view.View;import android.view.ContextMenu.ContextMenuInfo;import android.view.View.OnCreateContextMenuListener;import android.widget.AdapterView;import android.widget.ListView;import android.widget.SimpleAdapter;import android.widget.AdapterView.OnItemClickListener;public class MainActivity extends Activity {	@Override	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.activity_main);		// 绑定Layout里面的ListView		ListView list = (ListView) findViewById(R.id.ListView);		// 生成动态数组,加入数据		ArrayList<HashMap<String, Object>> listItem = new ArrayList<HashMap<String, Object>>();		for (int i = 0; i < 16; i++) {			HashMap<String, Object> map = new HashMap<String, Object>();			map.put("ItemImage", R.drawable.img_checked);// 图像资源的ID			map.put("ItemTitle", "Level " + i);			map.put("ItemText", "Custom content! Custom content! ");			listItem.add(map);		}		// 生成适配器的Item和动态数组对应的元素		SimpleAdapter listItemAdapter = new SimpleAdapter(this, listItem,// 数据源				R.layout.list_items,// ListItem的XML实现				// 动态数组与ImageItem对应的子项				new String[] { "ItemImage", "ItemTitle", "ItemText" },				// ImageItem的XML文件里面的一个ImageView,两个TextView ID				new int[] { R.id.ItemImage, R.id.ItemTitle, R.id.ItemText });		// 添加并且显示		list.setAdapter(listItemAdapter);		// 添加点击		list.setOnItemClickListener(new OnItemClickListener() {			@Override			public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,					long arg3) {				setTitle("点击第" + arg2 + "项");			}		});		// 添加长按点击		list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {			@Override			public void onCreateContextMenu(ContextMenu menu, View v,					ContextMenuInfo menuInfo) {				menu.setHeaderTitle("长按菜单-ContextMenu");				menu.add(0, 0, 0, "弹出长按菜单0");				menu.add(0, 1, 0, "弹出长按菜单1");			}		});	}	// 长按菜单响应函数	@Override	public boolean onContextItemSelected(MenuItem item) {		setTitle("点击了长按菜单的第" + item.getItemId() + "项");		return super.onContextItemSelected(item);	}}

参考:www.iteye.com/topic/540423

下载:
ListViewTest.rar

欢迎交流 http://blog.csdn.net/ycwol/article/details/44100799

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/163254.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • python xml转excel_一个python 脚本将XML文件转换到excel

    python xml转excel_一个python 脚本将XML文件转换到excel需要下载一个module:xlwt,如下是sourcecodeimportxml.dom.minidomimportxlwtimportsyscol=0row=0defhandle_xml_report(xml_report,excel):problems=xml_report.getElementsByTagName(“problem”)handle_problems(p…

  • SchedulerFactoryBean的问题「建议收藏」

    SchedulerFactoryBean的问题「建议收藏」http://blog.csdn.net/beliefer/article/details/51578546转载于:https://www.cnblogs.com/yangwei20160911/p/6867182.html

  • layui单选框未显示的问题

    layui单选框未显示的问题一开始还没导入idea的时候,单纯点击一个网页是有显示出来的,当我把这个带有单选框的网页放到idea的项目中去的时候,发现单选框没显示出来。1.首先在确认js.css等东西有导入,和之前的网页也没有什么区别2.网上查询之后,解释:有些时候,你的有些表单元素可能是动态插入的。这时form模块的自动化渲染是会对其失效的。虽然我们没有双向绑定机制(因为我们叫经典模块化框架,偷笑.gif)但…

  • 【转】推荐几个免费下载激活成功教程软件的网站以及系统「建议收藏」

    【转】推荐几个免费下载激活成功教程软件的网站以及系统「建议收藏」今天想给大家推荐一些免费下载激活成功教程软件的网站,希望能帮助到大家!第一个要推荐的就CSDN自己的下载资源网站:https://download.csdn.net/推荐的原因主要是资源够全,一般网上有的这里都有,而且下载的时候能看到其他下载者的真实评价,但是有点不好的就是对新人不太友好,虽然有很多免积分的,但是一些新的资源都需要积分,不过人人为我,我为人人,在这里赚扣分也是很简单的事,只要你能上…

  • iptables 开放防火墙端口

    iptables 开放防火墙端口总所周知,远程访问centos服务的时候,都要开放相应服务的端口。下面就来说道说道。存在的问题一般情况下,centos下都会存在一个/etc/sysconfig/iptables文件,该文件是用来记录要开放的端口ip的。当然,也不排除新安装的centos,空空如也缺失的,此时就无法执行serviceiptablesrestart。如果你的centos中能正常运…

    2022年10月19日
  • JLink的JTag和SWD引脚定义及接线说明

    JLink的JTag和SWD引脚定义及接线说明日常我们用到的JTAG和SWD两种模式的接口如下:但是实际上接口是如下图所示箭头所示对接的:也就是说我们JTAG的19脚对应的是SWD的1脚。当你需要引线出来的时候JTAG的TDO13脚对应的就是SWD的SWDIO7JTAG的RTCK11脚对应的就是SWD的SWCLK9JTAG的N/C19脚对应的就是SWD的V…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号