`
stephen830
  • 浏览: 3025810 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ListView和数据绑定

 
阅读更多

ListView和数据绑定

 

 

在android开发中ListView是比较常用的组件,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示。

 

 

下面是具体的例子:

 



 ListView例子效果图

 

 

main_list_view.xml配置

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<ListView
    android:id="@+id/main_list_view_listview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    />
</LinearLayout>
 

main_list_view_item.xml配置

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:id="@+id/RelativeLayout_Item"
	android:layout_width="fill_parent" android:layout_height="wrap_content"
	android:paddingBottom="5dip"
	>
	<ImageView 
		android:id="@+id/main_list_view_item_item_image"
		android:layout_centerHorizontal="true" 
		android:layout_width="wrap_content"
		android:layout_height="wrap_content"
		/>
	<TextView 
		android:id="@+id/main_list_view_item_item_text"
		android:layout_centerHorizontal="true" 
		android:layout_width="wrap_content"
		android:layout_height="wrap_content" 
		android:textSize="20px"
		android:layout_gravity="center"
		/>
</LinearLayout>
 

Activity代码

 

    //定义选项菜单
    private String[] allOptionsMenuTexts = {"删除","保存","帮助","添加","详细","发送","电话","照相"};
    private int[] allOptionsMenuOrders = {5,2,6,1,4,3,7,8};
    private int[] allOptionsMenuIds = {Menu.FIRST+1,Menu.FIRST+2,Menu.FIRST+3,Menu.FIRST+4,Menu.FIRST+5,Menu.FIRST+6,Menu.FIRST+7,Menu.FIRST+8};
    private int[] allOptionsMenuIcons = {
    		android.R.drawable.ic_menu_delete,
    		android.R.drawable.ic_menu_edit,
    		android.R.drawable.ic_menu_help,
    		android.R.drawable.ic_menu_add,
    		android.R.drawable.ic_menu_info_details,
    		android.R.drawable.ic_menu_send,
    		android.R.drawable.ic_menu_call,
    		android.R.drawable.ic_menu_camera
    		};
	
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main_list_view);
        //展示ListView
        showListView();
    }
    
    /**
     * 显示ListView.
     */
    public void showListView(){
    	final Context context = this;
    	Integer[] itemImages = new Integer[allOptionsMenuIcons.length];
    	for(int i=0;i<itemImages.length;i++){
    		itemImages[i] = new Integer(allOptionsMenuIcons[i]);
    	}
    	
    	//绑定GridView组件内容
    	List<Object[]> itemValues = new ArrayList<Object[]>();
    	itemValues.add(allOptionsMenuTexts);
    	itemValues.add(itemImages);
    	
    	//定义适配器to参数
    	int[] to = {R.id.main_list_view_item_item_text,R.id.main_list_view_item_item_image};
    	int resource = R.layout.main_list_view_item;
    	
    	//生成适配器:使用自定义工具类 SimpleAdapterUtil.java来生成适配器
    	SimpleAdapter simpleAdapter = SimpleAdapterUtil.create(context,itemValues,resource,to);
    	
    	ListView listView = (ListView)findViewById(R.id.main_list_view_listview);
    	listView.setAdapter(simpleAdapter);
    	listView.setOnItemClickListener(new OnItemClickListener(){

			@Override
			public void onItemClick(AdapterView<?> parent, View view,
					int position, long id) {
				Toast.makeText(context, "["+allOptionsMenuTexts[position]+"]被点击了", Toast.LENGTH_SHORT).show();
			}
    	});
    }
 

备注:SimpleAdapterUtil工具类的完整代码,可以看这篇文章《1个简单的SimpleAdapter工具类-SimpleAdapterUtil 》。

 

 

 

 


 

 

 

  • 大小: 26.5 KB
分享到:
评论

相关推荐

    ListView绑定数据和设置ListView无数据的时候显示TextView暂无数据

    本篇将详细介绍如何将数据绑定到ListView以及在ListView没有数据时如何优雅地显示“暂无数据”的TextView提示。 一、ListView的数据绑定 1. **数据模型(Model)**:首先,我们需要创建一个数据模型类,例如`Item`...

    ListView与数组的绑定

    在本教程中,我们将探讨如何将一个数组的数据绑定到ListView上,以便用户可以清晰地查看和交互这些信息。下面将详细介绍这个过程。 首先,我们需要创建一个数组,它将存储要显示在ListView中的数据。这个数组可以是...

    WPF后台动态绑定ListView数据源

    这将帮助开发者更好地理解WPF中的数据绑定和ListView的使用。 首先,`ListView`的数据源通常是通过`ItemsSource`属性来设置的。在WPF中,数据绑定是核心特性之一,它允许UI元素与数据模型之间的交互。你可以将任何...

    listView_关于数据绑定

    然而,由于其内部的ViewHolder机制和数据绑定的问题,可能会导致行数据混乱,给用户体验带来负面影响。本篇将深入探讨这个问题及其解决方案。 ListView的工作原理主要依赖于Adapter,它负责在ListView中填充数据。...

    ListView绑定

    本教程将围绕“ListBox数据与Android ListView数据绑定”这一主题,讲解如何在Android中实现类似Windows Phone 7的ListBox数据绑定。 首先,理解数据绑定的基本概念。数据绑定是将UI元素(如ListView)与数据源(如...

    popupwindow中用listView绑定数据并显示在View上方

    总之,要在PopupWindow中使用ListView显示数据,你需要创建一个包含ListView的布局,初始化PopupWindow,设置数据绑定,最后定位并显示PopupWindow。通过这种方式,你可以在Android应用中提供一个动态、交互式的数据...

    WPF前台代码实现数据绑定,Listview中使用数据模版,数据转换

    在这个主题中,我们将深入探讨如何在WPF中通过前台代码实现数据绑定,特别是在`ListView`控件中使用数据模板和样式,并应用数据转换。 首先,数据绑定是WPF的核心特性之一,它简化了UI与业务逻辑之间的通信。在WPF...

    android异步远程解析json数据绑定到listview上

    总的来说,"android异步远程解析json数据绑定到ListView上"这一过程涵盖了许多Android开发的核心技术,包括异步编程、网络请求、JSON解析、数据绑定和异常处理。理解并熟练掌握这些知识点对于提升Android应用的性能...

    C#,winform,listView动态插入数据

    ### C# WinForm ListView 动态插入数据详解 在C#的WinForms应用程序开发中,`ListView` 控件是常用的一种界面元素,用于显示一系列条目,并且支持多种视图模式,如大图标、小图标、列表、详细信息等。在实际应用中...

    ListView与SimpleAdapter导航简单实例

    在Android开发中,ListView是一个非常重要的组件,常用于展示大量数据列表,比如联系人列表、邮件...这个例子对于初学者理解Android中的ListView和数据绑定机制十分有帮助,也为更复杂的列表视图和数据适配提供了基础。

    将DataTable数据绑定到Listview中

    提供一个类; 功能:将指定的DataTable绑定到指定的ListView上显示。

    C#中WPF ListView绑定数据的实例详解

    要实现ListView绑定数据,需要使用Binding机制,将数据绑定到ListView控件的ItemSource属性上。这种机制可以使得数据与ListView控件之间建立联系,使得数据的变化可以实时地反映到ListView控件上。 在上面的代码中...

    解决C#Winform中使用ListView插入数据时候闪烁问题DEMO.zip

    4. **禁用Update和Refresh方法**:在插入数据时,临时禁用ListView的Update和Refresh方法,以减少不必要的屏幕更新。 ```csharp bool isUpdating = false; private void InsertData() { isUpdating = true; // ...

    ListView 数据绑定、数据汇总及自定义排序示例

    1 如何将数据显示到 ListView。 2 如何对 ListView 中的数据进行求和,并显示到 ListView 上。 3 如何对 ListView 进行自定义排序,并且排序后始终保存合计的行在最下方。

    Json字符串绑定自定义ListView

    在Android开发中,ListView是一种常用的UI组件,用于展示大量数据列表。当数据源来自网络时,通常会以...记住,良好的数据绑定和优化是提升用户体验的关键。在实践中不断探索和优化,你的Android开发技能将更上一层楼。

    C#的各种数据绑定

    该文档介绍了各种窗体数据绑定 WPF/WinForm 自定义DataViewManger 数据游标 ListView的数据绑定 属性通知的事件绑定 AOP实现的数据绑定 WPF的超简洁的集合数据绑定 SQLserver的数据库增删改查绑定实例

    ListView显示数据视图

    它可能扩展了ListView的功能,比如提供了更方便的数据绑定方式,更丰富的视图样式,或者优化了性能。在使用DataListView时,我们需要参照其提供的API文档或者源码来了解具体的用法,如初始化、设置数据源、监听事件...

    ListView控件显示数据库数据的C#源代码_ListView_c#listview控件_数据开发_

    这个“ListView控件显示数据库数据的C#源代码”实例,主要展示了如何利用C#编程语言,将数据库中的数据绑定到ListView控件上,以便用户可以方便地查看和操作数据。 首先,我们需要了解ListView的基本结构。ListView...

    C#-WPF ListView实现可编辑数据项

    5. **数据绑定和INotifyPropertyChanged**:确保你的数据模型类实现了INotifyPropertyChanged接口,这样当属性值改变时,ListView能够自动更新视图。 ```csharp public class YourDataType : ...

Global site tag (gtag.js) - Google Analytics