package com.cn.listview;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.app.AlertDialog;
import android.app.ListActivity;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.*;
public class ListView04 extends ListActivity {
private List<Map<String,Object>> mData;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mData=getData();
MyAdapter mAdapter=new MyAdapter(this);
setListAdapter(mAdapter);
}
private List<Map<String,Object>> getData(){
List<Map<String,Object>> list=new ArrayList<Map<String,Object>>();
Map<String,Object> map=new HashMap<String,Object>();
map.put("title", "title01");
map.put("info", "info01");
map.put("img", R.drawable.icon);
list.add(map);
map=new HashMap<String,Object>();
map.put("title", "title02");
map.put("info", "info02");
map.put("img", R.drawable.icon);
list.add(map);
return list;
}
public void showInfo(){
new AlertDialog.Builder(this)
.setTitle("myListView")
.setMessage("instruction")
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
}
}).show();
}
public final class ViewHolder{
public ImageView img;
public TextView title;
public TextView info;
public Button viewBtn;
}
public class MyAdapter extends BaseAdapter{
private LayoutInflater mflater;
public MyAdapter(Context mContext){
this.mflater=LayoutInflater.from(mContext);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mData.size();
}
@Override
public Object getItem(int arg0) {
return null;
}
@Override
public long getItemId(int arg0) {
return 0;
}
@Override
public View getView(int arg0, View arg1, ViewGroup arg2) {
ViewHolder holder=null;
if (arg1==null) {
holder=new ViewHolder();
arg1=mflater.inflate(R.layout.main, null);
holder.img=(ImageView)arg1.findViewById(R.id.img);
holder.title=(TextView)arg1.findViewById(R.id.title);
holder.info=(TextView)arg1.findViewById(R.id.info);
holder.viewBtn=(Button)arg1.findViewById(R.id.btn);
arg1.setTag(holder);
}else{
holder=(ViewHolder)arg1.getTag();
}
holder.img.setBackgroundResource((Integer)mData.get(arg0).get("img"));
holder.title.setText((String)mData.get(arg0).get("title"));
holder.info.setText((String)mData.get(arg0).get("info"));
holder.viewBtn.setOnClickListener(new btn_click());
return arg1;
}
class btn_click implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
showInfo();
}
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView android:id="@+id/img" android:layout_width="45px"
android:layout_height="45px" />
<TableLayout android:layout_width="fill_parent"
android:layout_height="fill_parent" android:stretchColumns="0">
<TableRow>
<LinearLayout android:orientation="vertical"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:gravity="left">
<TextView android:textSize="16px" android:textColor="#ffffff"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:id="@+id/title" />
<TextView android:textSize="13px" android:textColor="#ffffff"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:id="@+id/info" />
</LinearLayout>
<Button android:id="@+id/btn" android:text="@string/viewBtn"
android:layout_width="65px" android:layout_height="wrap_content" />
</TableRow>
</TableLayout>
</LinearLayout>
分享到:
相关推荐
这个教程将详细介绍Android ListView的基本用法。 ### 1. 添加ListView到布局 首先,在XML布局文件中添加ListView组件。一个基本的ListView元素如下所示: ```xml <ListView android:id="@+id/list_view" ...
这个简单的ListView用法例子将帮助初学者理解和掌握如何在实际项目中运用ListView。 首先,我们来了解一下ListView的基本结构。ListView是Android SDK中的一个视图类,继承自AbsListView。它的核心功能是展示一个可...
在Android开发中,ListView的使用频率极高,尤其是在数据展示的场景中。本教程将详细讲解ListView的基本用法,包括自定义适配器、子项点击事件以及长按触发删除功能的实现。 ### 1. ListView的基本使用 首先,我们...
本篇文章将详细介绍这两个组件的简单用法。 ### `TextView` `TextView`是Android中最基础的文本显示组件,它能够显示单行或多行文本。我们可以使用XML布局文件或者代码动态创建`TextView`。在XML中,`TextView`的...
总结,ListView是Android开发中不可或缺的一部分,熟练掌握其使用方法和优化技巧,能够帮助开发者构建出功能强大且用户体验良好的应用程序。无论是简单的列表展示,还是复杂的视图组合,ListView都能提供相应的解决...
### ListView 控件用法详解 #### 一、简介 ListView 控件是 Windows Forms ...以上就是在 WinForm 中使用 ListView 控件的基本方法。通过合理地配置和使用这些功能,开发者可以轻松地创建出美观且功能丰富的用户界面。
以上内容详细介绍了 `ListView` 控件的基本使用方法,包括初始化、添加和删除项目、从数据库读取数据、获取选中项目的值以及实现简单的排序功能。通过这些操作,开发者可以轻松地利用 `ListView` 控件创建出功能强大...
本篇将深入探讨ListView控件的基本用法和常见功能,以帮助开发者更好地理解和应用。 首先,添加ListView控件到窗体。在VB的设计视图中,打开工具箱,找到ListView控件并将其拖放到窗体上。在属性窗口中,可以设置...
本篇文章将深入探讨如何在Android中使用ListView,包括基本配置、适配器(Adapter)的使用以及一些优化技巧。 首先,我们需要在布局文件中添加ListView元素。在XML布局中,你可以这样定义一个ListView: ```xml ...
以下将详细介绍ListView及其适配器的使用方法。 一、ListView的基本结构 ListView由多个列表项(ListView Item)组成,每个列表项通常对应一个View或一个自定义布局。当数据量较大时,为了提高性能,ListView会只...
博客文章《Android ListView简单示例》(http://blog.csdn.net/djstavaV/article/details/48653283)提供了更详细的步骤和代码示例。通过这个示例,你可以了解如何在实际项目中使用ListView,以及如何自定义其显示...
本教程将深入讲解如何使用ArrayAdapter和SimpleAdapter这两种方式来创建一个简单的ListView实例。 首先,我们来理解ArrayAdapter。ArrayAdapter是Android提供的一种基础适配器,它允许我们将一个数组(如字符串数组...
### C# ListView 控件用法详解 #### 一、ListView 类简介 `ListView` 控件是 Windows Forms 中非常重要的组成部分之一,它提供了多种视图模式,可以用来展示各种形式的数据,如图标、列表或者详细信息等。通过设置...
以上就是 Delphi 中 ListView 控件的基本使用方法,包括初始化、添加删除项目、处理选中项、排序以及其他一些实用的操作技巧。通过这些方法,开发者可以根据实际需求灵活地操作 ListView 控件,实现所需的功能。
以下是一个关于如何在Android中使用ListView的简单事例: 第一步:新建`MyListActivity`继承自`ListActivity` 在创建一个基于ListView的活动时,通常会继承`ListActivity`类,因为它为ListView提供了一些便利的方法...
这使得创建简单的列表界面变得非常便捷,但如果你需要更复杂的定制,可能需要直接使用ListView并自定义Adapter。 最后,`8.ListViewBaseAdapterDemo`涉及到了BaseAdapter。BaseAdapter是所有Adapter的基类,它提供...
ArrayAdapter是ListView最基础的数据适配器,适用于简单的数据绑定。它将数据与视图模板进行绑定,创建ListView的每一行。ArrayAdapter主要接收一个列表数据(如ArrayList),并自动将数据转化为TextView或其他视图...
本文将深入探讨ListView虚模式的使用方法,结合实际项目经验进行详细解析。 1. **什么是ListView虚模式** ListView虚模式是一种优化机制,允许开发者仅在需要时加载和显示数据。在常规模式下,ListView会一次性...
### Android ListView 控件基本用法详解 #### 一、引言 在Android应用开发中,经常需要展示大量...掌握`ListView`的使用方法,对于开发高质量的Android应用来说是非常重要的一步。希望本篇文章能对您的学习有所帮助!
本教程将深入探讨如何在C#中使用Xamarin.Android来实现ListView的基本操作,旨在帮助开发者快速掌握这一核心功能。 首先,我们需要理解ListView的基本结构。ListView通常与一个Adapter配合工作,Adapter是数据源和...