ArrayAdapter六种构造方法的作用

ArrayAdapter<T>(Context context, int textViewResourceId);

上下文,布局文件

ArrayAdapter<T>(Context context, int resource, int textViewResourceId);

上下文。显示的视图。显示视图的组件

ArrayAdapter<T>(Context context, int textViewResourceId, List<T> objects)

上下文,显示的视图,数据资源(对象)

ArrayAdapter<T>(Context context,int textViewResourceId,T[] objects)

上下文,显示的视图,数据资源(数组)

ArrayAdapter<T>(Context context,int resource,int textViewResourceId, List<T> objects)

上下文,显示的视图,显示视图的组件,数据资源(数组)

ArrayAdapter<T>(Context context,int resource,int textViewResourceId, T[] objects)

上下文,显示的视图。显示视图的组件,数据资源(数组)

项目步骤

  1. 声明listView控件并获取显示的视图
  2. 获取显示的数据
  3. 设置显示的adapter
  4. 注冊点击事件

详细案例

实现效果:

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

查找的方法

public List<String> findAllNames() {
List<String> names = new ArrayList<String>(); SQLiteDatabase db = dh.getWritableDatabase();
Cursor c = db.rawQuery("select username from users", null); while (c.moveToNext()) {
names.add(c.getString(c.getColumnIndex("username")));
}
db.close();
return names;
}

布局文件

同BaseAdapter的布局文件activity_main.xml

ArrayAdapter实现类(主程序)

package com.example.android_sqlite;

import java.util.List;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast; import com.example.android_sqlite.dao.impl.UserDaoImpls;
import com.example.android_sqlite.database.DatabaseHelper;
/**
* ArrayAdapter
* @author zhaoyazhi
*
*/
public class MainActivityss extends Activity implements OnItemClickListener {
private ListView lv_users;// 视图层 // model层 相关的对象的声明
private DatabaseHelper dh;
private UserDaoImpls userDao;
private List<String> names; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 创建数据库
dh = new DatabaseHelper(this);
// 获取显示数据 model
userDao = new UserDaoImpls(dh);
// 查询获取数据
names = userDao.findAllNames(); // 设置视图层
lv_users = (ListView) findViewById(R.id.lv_users); //參数1:上下文 參数2:显示的视图 參数3:数据资源
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_expandable_list_item_1,names); // adapter作为控制层
lv_users.setAdapter(adapter); // 注冊点击事件
lv_users.setOnItemClickListener(this); } @Override
public void onItemClick(AdapterView<? > parent, View view, int position,
long arg3) { // 获取点击我的数据
Toast.makeText(this, parent.getItemAtPosition(position) + "", 0).show(); } }

赵雅智_ListView_ArrayAdapter的更多相关文章

  1. 赵雅智_ContentProvider

    ContentProvider介绍 ContentProvider是不同应用程序之间进行交换数据的标志API 也就是说:一个应用程序通过ContentProvider暴露自己的数据操作接口,那么无论该 ...

  2. 赵雅智_Fragment生命周期

    官网帮助文档链接:  http://developer.android.com/guide/components/fragments.html 主要看两张图.和跑代码 一,Fragment的生命周 w ...

  3. 赵雅智:js知识点汇总

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemhhb3lhemhpMjEyOQ==/font/5a6L5L2T/fontsize/400/fill/I0 ...

  4. 赵雅智_ListView_BaseAdapter

    Android界面中有时候须要显示略微复杂的界面时,就须要我们自己定义一个adapter,而此adapter就要继承BaseAdapter,又一次当中的方法. Android中Adapter类事实上就 ...

  5. 赵雅智_BroadcastReceiver电话监听

    AndroidManifest.xml 注冊广播接收者 加入权限 <?xml version="1.0" encoding="utf-8"?> &l ...

  6. 赵雅智_BroadcastReceiver

    BroadcastReceiver  用于接收程序(包含用户开放的程序和系统内建程序)所发出的Broadcast intent 耗电量 开机启动 窃取别人短信 窃取别人电话 开发: 创建须要启动的Br ...

  7. 赵雅智:service_startService生命周期

    案例演示 布局文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xm ...

  8. 赵雅智_BroadcastReceiver短信监听

    AndroidManifest.xml 注冊广播接收者 加入权限 <?xml version="1.0" encoding="utf-8"?> &l ...

  9. 赵雅智_Android编码规范

    凝视 导入mycodetemplates.xml统一凝视样式 须要加凝视的地方 类凝视(必加) 方法凝视(必加) 块凝视主要是数据结构和算法的描写叙述(必加) 类成员变量和常量凝视(选择性加入) 单行 ...

随机推荐

  1. sort-uniq-cut-join命令练习

    [root@linux Desktop]# cat> fruits.txt banana orange persimmon %%banana apple ORAGE cat> fruits ...

  2. Java反射机制的基本概念与使用

    本篇文章分为以下几个部分: 1.认识反射 2.反射的源头(Class类) 3.利用反射操作构造方法 4.利用反射调用类中的方法 5.反射中的invoke方法 6.利用反射调用类中的属性 反射在我们普通 ...

  3. 关于js中__proto__和prototype的一些理解<转>

    var Person = function(name) {     this.name = name; } var p = new Person(); new操作符的操作是 var p = {} p. ...

  4. 配置ubuntu - tftp server服务器步骤

    配置Ubuntu tftp服务的步骤: 1.安装相关软件包:Ubuntu tftp(服务端),tftp(客户端),xinetd sudo apt-get install tftpd tftp xine ...

  5. Hbase基础篇

    namespace:命名空间的作用是把多个属于相同业务领域的表分成一个组.一个表可以自由选择是否有命名空间,如果创建表的时候加上了命名空间后,这个表名字就成为了:<NameSpace> : ...

  6. C#_GDI+编程教程

    第7章  C#图形图像编程基础 本章主要介绍使用C#进行图形图像编程基础,其中包括GDI+绘图基础.C#图像处理基础以及简单的图像处理技术. 7.1  GDI+绘图基础 编写图形程序时需要使用GDI( ...

  7. 在Asp.net中为图像加入水印信息

    using System.Drawing; using System.IO; using System.Drawing.Imaging; private void AddTextToImg(strin ...

  8. C++ 函数的扩展③--函数重载

    //函数扩展--函数重载(C语言不支持函数重载) #include<iostream> using namespace std; //函数重载在本质上是相互独立的不同函数(静态链编),在c ...

  9. ActionContextCleanUp

    ActionContextCleanUp作用   延长action中属性的生命周期,包括自定义属性,以便在jsp页面中进行访问,让actionContextcleanup过滤器来清除属性,不让acti ...

  10. 去掉if

    修改前 namespace CleanCSharp.Methods.Dirty {     class BooleanSwitchingArgumentsExample     {         p ...