当前位置:  编程技术>移动开发

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

    来源: 互联网  发布时间:2014-10-18

    本文导语:  示例代码: 这是一个读取联系人的代码: 代码如下: 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.Bu...

示例代码:
这是一个读取联系人的代码:
代码如下:

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 dataList=new ArrayList();
// 获得所有的联系人
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-generated method stub
return dataList.get(paramInt);
}

return 就是 返回list的数据
paramInt 这是索引号
直接取list.get(索引)
这样就可以了
还要实现上述的几个方法
注意,如果list!>1 就会报错

    
 
 

您可能感兴趣的文章:

  • Android开发:TextView加入滚动条示例
  • android开发教程之switch控件使用示例
  • android开启免提切换功能示例
  • Android开发之注册登录方法示例
  • 手写android布局示例
  • Android示例程序 apps-for-android
  • android网络编程之android连接网络的简单示例代码
  • android获取当前手机号示例程序
  • android读取assets文件示例
  • android读取raw文件示例
  • android实现来电静音示例(监听来电)
  • android开机自启动app示例分享
  • android开发教程之自定义控件checkbox的样式示例
  • Android创建文件实现对文件监听示例
  • android输入框与文本框加滚动条scrollview示例
  • android保存Bitmap图片到指定文件夹示例
  • android播放gif格式图片示例
  • Android获取apk程序签名信息代码示例
  • android中设置TextView/Button 走马灯(Marquee)效果示例
  • android教程使用webview访问https的url处理sslerror示例
  • Android 上类似IOS 的开关控件。 Android ToggleButton
  • android控件之WebView控件缩小
  • Android控件之TextView的分析探究
  • 树形控件 android_treevew
  • android下显示歌词的控件 OpenLRC
  • Android 日历控件 TimesSquare
  • Android 聊天控件 Android-Chat-Widget
  • Android 月视图控件 MonthView
  • Android控件之EditView常用属性及应用方法
  • Android顶栏控件 AStickyHeader
  • Android中让图片自适应控件的大小的方法
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Android入门之RelativeLayout、FrameLayout用法分析
  • Android入门之LinearLayout、AbsoluteLayout的用法实例讲解
  • Android中AutoCompleteTextView与MultiAutoCompleteTextView的用法
  • Android入门之Gallery用法实例解析
  • Android开发之时间日期组件用法实例
  • android中GridView的用法示例
  • Android Map新用法:MapFragment应用介绍
  • Android提高之SurfaceView的基本用法实例分析
  • android CursorLoader用法介绍
  • Android入门之AlertDialog用法实例分析
  • Android NDK中socket的用法以及注意事项分析
  • Android入门之PopupWindow用法实例解析
  • Android入门之Gallery+ImageSwitcher用法实例解析
  • Android中GPS定位的用法实例
  • Android提高之Service用法实例解析
  • Android入门之Style与Theme用法实例解析
  • Android Intent的几种用法详细解析
  • Android中AsyncTask的用法实例分享
  • Android开发之AlarmManager的用法详解
  • Android提高之Activity+Intent用法示例
  • 申请Android Map 的API Key(v2)的最新申请方式(SHA1密钥)
  • Android瀑布流实例 android_waterfall
  • Android开发需要的几点注意事项总结
  • Android系统自带样式 (android:theme)
  • android 4.0 托管进程介绍及优先级和回收机制
  • Android网络共享软件 Android Wifi Tether
  • Android访问与手机通讯相关类的介绍
  • Android 图标库 Android GraphView
  • Android及andriod无线网络Wifi开发的几点注意事项
  • 轻量级Android开发工具 Android Tools
  • android播放gif格式图片示例 iis7站长之家


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3