本文来自肥宝传说之路,引用必须注明出处!

ListView是Android中经常使用的控件。

什么是列表视图,让我们先看看图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

最常见的样例就是各种菜单的下啦列表。

要实现列表,须要完毕三个要素:

1.ListView 把全部的数据按指定的格式排成列表。

列表中每一项能够称为Item(如上图This is Title)。

能够想象得出,要显示列表。就要先弄成相应的格式

2.adapter 适配器就是这样的ListView可以识别的格式,当然适配器有几种。以下再细说。适配器是指定格式的数据。可是我们数据库或者网络其它地方来源的数据不是这样的格式的。所以就有了适配器这个中介。

3.数据 须要显示的数据

处理步骤:获取数据=》数据整理成可识别的格式。即adapter=》把adapter放进ListView中=》显示

adapter有三种,ArrayAdapter。SimpleAdapter和SimpleCursorAdapter

ArrayAdapter:数组适配器,最简单的适配器。仅仅能显示一行字,上图就是了。

看代码前,补充一些java知识。ArrayList为动态数组。相当于C++的vector了,点一下深入了解

我们先看看代码:

package com.fable.helloworld;

import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;//数组适配器的包
import android.widget.ListView; //列表视图的包 public class HelloWorldActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
//数据来源,这里是測试数据
List<String> data1 = new ArrayList<String>();
data1.add("test1");
data1.add("測试数据2");
data1.add("測试数据3");
data1.add("測试数据4"); super.onCreate(savedInstanceState);
//绑定XML中的ListView。作为Item的容器。
ListView listView = new ListView(this);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1,data1);
//加入而且显示
listView.setAdapter(adapter);
setContentView(listView);
}
}

上面使用的android.R.layout.simple_expandable_list_item_1为Android提供基础的列表项的布局文件。

这里用到的构造函数 ArrayAdapter<String>(Context context, int resource, List<String> objects)。Context为上下文。这里是当前的Activity,所以传this进去。resource为资源文件的id,记录在R.java里面的(不知道R.java的能够看看这里)。objects为源数据。

通过ArrayAdapter整合数据。放进ListView,就能够显示出来了。

Android新手入门2016(8)--ListView之ArrayAdapter的更多相关文章

  1. Android新手入门2016(10)--GridView

    本文来自肥宝传说之路.引用必须注明出处! GridView跟ListView一样是多控件布局.实现九宫图是最方便的. 还是先看看图,没图说个鸡鸡是不是 如上图.是一种应用方式.在每一个格子里面.放入应 ...

  2. Android新手入门2016(7)--布局

    布局,这个在服务端变成是没有的,也是服务端的人学习client的一道坎吧. 曾经用cocos2d-x写小游戏的时候就是这个非常难懂,或者能用,可是理解不多的话,非常难写出好的布局,难以适合商业化的应用 ...

  3. Android新手入门2016(14)--FragmentTabHost实现选项卡和菜单

    本文来自肥宝传说之路,引用必须注明出处! 这章憋了好久.本来想写选项卡的,学到TabHost,TabWidget的,把代码拿过来准备研究的时候,发现竟然在4.0.3版本号被废弃了. 百度一下,发如今后 ...

  4. Android新手入门

    本博客出自公众号安卓应用频道:http://mp.weixin.qq.com/s?__biz=MzA3MDMyMjkzNg==&mid=2652261947&idx=1&sn= ...

  5. 42.Android之ListView中ArrayAdapter简单学习

    今天学习下Android中ListView关于ArrayAdapter数据绑定, 废话少说直接上代码. 改下布局文件: <?xml version="1.0" encodin ...

  6. eclipse再见,android studio 新手入门教程(一)基本设置

    写在前面: 作为一个刚半只脚踏入android开发的新手,在使用eclipse开发了两个自我感觉不甚成熟的商城类app之后,遇到了一些问题,总结为如下: 代码复用性.findviewById,oncl ...

  7. [译]:Xamarin.Android开发入门——Hello,Android Multiscreen深入理解

    原文链接:Hello, Android Multiscreen_DeepDive. 译文链接:Xamarin.Android开发入门--Hello,Android Multiscreen深入理解. 本 ...

  8. 《IM开发新手入门一篇就够:从零开发移动端IM》

        登录 立即注册 TCP/IP详解 资讯 动态 社区 技术精选 首页   即时通讯网›专项技术区›IM开发新手入门一篇就够:从零开发移动端IM   帖子 打赏 分享 发表评论162     想开 ...

  9. 【原创】新手入门一篇就够:从零开发移动端IM

    一.前言 IM发展至今,已是非常重要的互联网应用形态之一,尤其移动互联网时代,它正以无与论比的优势降低了沟通成本和沟通代价,对各种应用形态产生了深远影响. 做为IM开发者或即将成为IM开发者的技术人员 ...

随机推荐

  1. php !=和!==

    今天测试了一下!=和!== <?phpheader("Content-type: text/html; charset=utf-8"); if (1!="1&quo ...

  2. shp系列(四)——利用C++进行Shx文件的读(打开)

    1.shx文件的基本情况 shx文件又叫索引文件,主要包含坐标文件的索引信息,文件中每个记录包含对应的坐标文件记录距离坐标文件的初始位置的偏移量.通过索引文件可以很方便地在坐标文件中定位到指定目标的坐 ...

  3. MVC学习日记(三)EntityFramework

    其实学会了第一篇的创建和第二篇的使用以后,基本的mvc操作足够了,至于验证神马的,还不如用Jquery.h5的好看适用,所以接下来, 后续上会讲一些比较实用的. 在之前的文章说到了基础的使用, 那么, ...

  4. hihoCoder挑战赛32

    Rikka with Sequence V 构造 #pragma comment(linker, "/STACK:102400000,102400000") #include< ...

  5. jQueryDOM操作模块

    DOM操作模块 1.复习选择器模块(选择器模块结束) 目的:学而时习之 复习和总结选择器模块 2.DOM的基本操作方法 目标:回顾DOM操作的基本方法 3.1 DOM操作 -创建节点 练习 1:创建1 ...

  6. 在APP开发设计过程中:如何设计启动页面?

    心理学上有一个“7秒理论”,说的是,一个人对另一个人的印象,在初次见面的七秒内就会形成,最近更有研究表明,这个时间可能更短——不到1秒.所以初次见面所展示的形象真的很重要.同理,用户在使用APP时,每 ...

  7. 最简单的一致性Hash算法实现

    import java.util.Collection;import java.util.SortedMap;import java.util.TreeMap; public class Consis ...

  8. Photoshop扣除特定颜色背景

    步骤:打开ps--打开图片---选择--选择色彩范围---取样颜色(用吸管选定颜色)-- ( )再按delete键删除--点击文件--点击储存为PSD. 这样就抠除了特定范围色彩内的背景.

  9. 熟悉VS2017 和Github 第二次作业

    GIT地址 https://github.com/Astone1213 GIT用户名  Astone1213 学号后五位  62114 博客地址 https://www.cnblogs.com/AsL ...

  10. JS 100元购物卡,牙刷5元,香皂2元、洗发水15元 100元正好花完有多少种可能

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...