本次开发分为4步:
1、获取手机通讯录的信息;
2、手机通讯录的数据封装;
3、手机通讯录的信息的UI适配;
4、对ListView的优化。
GetNumber.java:
用来获取手机通讯录。下面是代码部分:
package com.example.getmyphonenumber;
import java.util.ArrayList;
import java.util.List;
import android.content.Context;
import android.database.Cursor;
import android.provider.ContactsContract.CommonDataKinds.Phone;
public class GetNumber {
public static List<PhoneInfo> lists = new ArrayList<PhoneInfo>();
public static String getNumber(Context context){
Cursor cursor = context.getContentResolver().query(Phone.CONTENT_URI, null, null, null, null);
String phoneNumber;
String phoneName;
while (cursor.moveToNext()) {
phoneNumber = cursor.getString(cursor.getColumnIndex(Phone.NUMBER));
phoneName = cursor.getString(cursor.getColumnIndex(Phone.DISPLAY_NAME));
PhoneInfo phoneInfo = new PhoneInfo(phoneName, phoneNumber);
lists.add(phoneInfo);
System.out.println(phoneName+phoneNumber);
}
return null;
}
}
2、PhoneInfo.java:
用来对姓名和电话号码进行数据封装。下面是代码部分:
package com.example.getmyphonenumber;
public class PhoneInfo {
private String name;
private String number;
public PhoneInfo(String name,String number) {
setNumber(number);
setName(name);
}
public String getName() {
return name;
}