ListView的Adapter使用 之 初学ArrayAdapter String

 更新时间:2013年06月05日 11:28:08   作者:  
ListView是Android中经常会使用的东西,绑定数据对于初学者来说,尤其是刚接触编程的人来说,往往会觉得很难理解,我上大二的时候学的java,但是基本上相当于没有学,什么都没写过,真正接触编程就是开始上手学android,把这些记录下来,自己可以回头看下,也可以让新手更好的理解

ListView是Android中经常会使用的东西,绑定数据对于初学者来说,尤其是刚接触编程的人来说,往往会觉得很难理解,我上大二的时候学的java,但是基本上相当于没有学,什么都没写过,真正接触编程就是开始上手学android,把这些记录下来,自己可以回头看下,也可以让新手更好的理解。高手绕过....

Android中Adapter我是这么理解的,是数据和视图之间的桥梁,数据在adapter中做处理,然后显示到视图上面。

Adapter有很多种,有ArrayAdapter<T>, BaseAdapter, CursorAdapter, HeaderViewListAdapter, ListAdapter, ResourceCursorAdapter, SimpleAdapter, SimpleCursorAdapter, SpinnerAdapter, WrapperListAdapter.

我在项目中用到过的就ArrayAdapter<T>, (数组也可以是对象数组),BaseAdapter(所有Adapter的基类),SimpleAdapter,CursorAdapter(数据来源是cursor),SimpleCursorAdapter,感觉有必要总结一下。

最基本的要数sdk官网上面给的这个代码例子了http://developer.android.com/resources/tutorials/views/hello-listview.html。

 

我自己写的一个例子,先上图,再贴上代码:



复制代码 代码如下:

package com.cz.list.demo;
import android.app.Activity; import android.os.Bundle;
import android.widget.ArrayAdapter; import android.widget.ListView;
public class ArrayListDemo extends Activity {
private ListView listView; private String[] adapterData;
/** Called when the activity is first created. */
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); setContentView(R.layout.array_list_layout);
/* 找到这个listView */
listView = (ListView) findViewById(R.id.array_list);
/* 我们要在listView上面没条显示的数据,放到一个数组中 */ adapterData = new String[] { "Afghanistan", "Albania", "Algeria",
"American Samoa", "Andorra", "Angola", "Anguilla", "Antarctica", "Antigua and Barbuda", "Argentina", "Armenia",
"Aruba", "Australia", "Austria", "Azerbaijan", "Bahrain", "Bangladesh", "Barbados", "Belarus", "Belgium", "Belize",
"Benin", "Bermuda", "Bhutan", "Bolivia", "Bosnia and Herzegovina", "Botswana", "Bouvet Island" };
/* 这个是数组string类型的数组 */
// ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>( // ArrayListDemo.this, android.R.layout.simple_list_item_1,
// adapterData);
/* 设置ListView的Adapter */ listView.setAdapter(new ArrayAdapter<String>(ArrayListDemo.this,
android.R.layout.simple_list_item_1, adapterData)); }
}


代码中写的有注释,我觉得要解释的有几点,都是很基础的,高手就见笑了.

1. 适配器的作用是数据和视图之间的桥梁
2. 这个小例子是要显示一个数组,我们就用ArrayAdapter,数组适配器,数据的数据类型<>是String类型的,数据的数据类型还可以是其他的包括对象类型的
3. ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
ArrayListDemo.this, android.R.layout.simple_list_item_1,
adapterData);
这段代码是创建一个数组适配器的代码,里面有三个参数,第一个参数是上下文,就是当前的Activity, 第二个参数是android sdk中自己内置的一个布局,它里面只有一个TextView,这个参数是表明我们数组中每一条数据的布局是这个view,就是将每一条数据都显示在这个view上面;第三个参数就是我们要显示的数据。listView会根据这三个参数,遍历adapterData里面的每一条数据,读出一条,显示到第二个参数对应的布局中,这样就形成了我们看到的listView. 不知道刚学的同学懂了没有...

本文出自 “生如夏花” 博客

相关文章

  • Android实现拍照截取和相册图片截取

    Android实现拍照截取和相册图片截取

    这篇文章主要为大家详细介绍了Android实现拍照截取和相册获取图片截取,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • Android中ViewPager懒加载的优化详解

    Android中ViewPager懒加载的优化详解

    这篇文章主要为大家详细介绍了Android中ViewPager懒加载的优化相关技巧,文中的示例代码讲解详细,有需要的小伙伴可以跟随小编一起了解下
    2024-04-04
  • Java中的Struts2框架拦截器之实例代码

    Java中的Struts2框架拦截器之实例代码

    本篇文章主要介绍了Java的Struts2框架拦截器实例的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • Android自动获取输入短信验证码库AutoVerifyCode详解

    Android自动获取输入短信验证码库AutoVerifyCode详解

    这篇文章主要为大家详细介绍了Android自动获取输入短信验证码库,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • Android计步模块实例代码(类似微信运动)

    Android计步模块实例代码(类似微信运动)

    本篇文章主要介绍了Android计步模块实例代码(类似微信运动),具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • Android App实现闪屏页广告图的全屏显示实例

    Android App实现闪屏页广告图的全屏显示实例

    这篇文章主要为大家介绍了Android App实现闪屏页广告图的全屏显示实例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • Android开源组件小结

    Android开源组件小结

    Android自带的组件比较丑陋(个人感觉),自己写组件比较复杂,而且必须熟悉android应用层开发的一些机制,如绘制、回调,所以非迫不得已的情况下还是不要自己写组件,因为怕考虑不周全导致譬如性能或异常方面的问题,你自己写也会耗费不少时间
    2013-02-02
  • 在Android开发中使用自定义组合控件的例子

    在Android开发中使用自定义组合控件的例子

    这篇文章主要介绍了在Android开发中使用自定义组合控件的例子,作者根据例子总结到了实现父类的构造方法等基本要点,具有一定参考价值,需要的朋友可以参考下
    2016-02-02
  • Android中获得手机屏幕大小实现代码

    Android中获得手机屏幕大小实现代码

    这篇文章主要介绍了Android中获得手机屏幕大小实现代码,Android开发中经常需要获得屏幕的宽高,本文直接封装成一个工具类,需要的朋友可以参考下
    2015-06-06
  • Android Studio实现华为手机的充电动画效果

    Android Studio实现华为手机的充电动画效果

    本篇文章介绍了我参照华为手机的充电动画来仿照实现的样例,这个动画并不难实现,不过案例精简具有参考意义,需要的朋友快往下看吧
    2021-10-10

最新评论