iis服务器助手广告广告
返回顶部
首页 > 资讯 > 移动开发 >Android控件ListView用法(读取联系人示例代码)
  • 237
分享到

Android控件ListView用法(读取联系人示例代码)

联系示例listviewAndroid 2022-06-06 10:06:45 237人浏览 安东尼
摘要

示例代码: 这是一个读取联系人的代码: 代码如下: package com.ui.domain; import java.util.ArrayList; import jav

示例代码:
这是一个读取联系人的代码:
代码如下:
package com.ui.domain;
import java.util.ArrayList;
import java.util.List;
import Android.app.Activity;
import android.database.Cursor;
import android.database.DataSetObserver;
import android.graphics.Color;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.ListAdapter;
import android.widget.ListView;
public class CallPhone extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.call_phone);
//联系人列表
final List<String> dataList=new ArrayList<String>();
// 获得所有的联系人
Cursor cur = getContentResolver().query(
ContactsContract.Contacts.CONTENT_URI,
null,
null,
null,
ContactsContract.Contacts.DISPLAY_NAME
+ " COLLATE LOCALIZED ASC");
while (cur.moveToNext()) {
int idColumn = cur.getColumnIndex(ContactsContract.Contacts._ID);
int displayNameColumn = cur.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME);
String phoneNumber=cur.getString(1);
String disPlayName = cur.getString(displayNameColumn);
dataList.add(disPlayName+":"+phoneNumber);
Log.i("联系人名称:", disPlayName);
}
cur.close();//关闭游标
ListView listView=(ListView)findViewById(R.id.listView1);
listView.setAdapter(new ListAdapter() {
@Override
public void unreGISterDataSetObserver(DataSetObserver paramDataSetObserver) {
// TODO Auto-generated method stub
}
@Override
public void registerDataSetObserver(DataSetObserver paramDataSetObserver) {
// TODO Auto-generated method stub
}
@Override
public boolean isEmpty() {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean hasStableIds() {
// TODO Auto-generated method stub
return false;
}
@Override
public int getViewTypeCount() {
// TODO Auto-generated method stub
return dataList.size();
}
@Override
public View getView(int paramInt, View paramView, ViewGroup paramViewGroup) {
// TODO Auto-generated method stub
EditText text=new EditText(CallPhone.this);
text.setBackgroundColor(Color.WHITE);
text.setText(dataList.get(paramInt));
return text;
}
@Override
public int getItemViewType(int paramInt) {
// TODO Auto-generated method stub
return 0;
}
@Override
public long getItemId(int paramInt) {
// TODO Auto-generated method stub
return 0;
}
@Override
public Object getItem(int paramInt) {
// TODO Auto-generated method stub
return dataList.get(paramInt);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return dataList.size();
}
@Override
public boolean isEnabled(int paramInt) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean areAllItemsEnabled() {
// TODO Auto-generated method stub
return false;
}
});
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
getMenuInflater().inflate(R.menu.call_phone, menu);
return true;
}
}

这个listView有个setAdapter 适配器,里面可以直接实现接口,或者写个类,实现
代码如下:
ListAdapter

这个接口
代码如下:
listView.setAdapter

在定义一个list 集合 泛型为String
接口中有个方法:
代码如下:
@Override
public Object getItem(int paramInt) {
// TODO Auto-gene rated method stub
return dataList.get(paramInt);
}

return 就是 返回list的数据
paramInt 这是索引
直接取list.get(索引)
这样就可以了
还要实现上述的几个方法
注意,如果list!>1 就会报错 您可能感兴趣的文章:android ListView和ProgressBar(进度条控件)的使用方法Android控件之ListView用法实例详解Android ExpandableListView展开列表控件使用实例Android UI控件ExpandableListView基本用法详解浅谈Android开发中ListView控件性能的一些优化方法android使用ExpandableListView控件实现小说目录效果的例子Android控件之使用ListView实现时间轴效果Android 自定义弹性ListView控件实例代码(三种方法)Android编程之控件ListView使用方法Android控件ListView使用方法详解


--结束END--

本文标题: Android控件ListView用法(读取联系人示例代码)

本文链接: https://www.lsjlt.com/news/27547.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作