Android 获取通讯录联系人信息(下)

 /**得到手机SIM卡联系人人信息**/  

    private void getSIMContacts() {  

    ContentResolver resolver = mContext.getContentResolver();  

    // 获取Sims卡联系人  

    Uri uri = Uri.parse("content://icc/adn");  

    Cursor phoneCursor = resolver.query(uri, PHONES_PROJECTION, null, null,  

        null);  

    if (phoneCursor != null) {  

        while (phoneCursor.moveToNext()) {  

        // 得到手机号码  

        String phoneNumber = phoneCursor.getString(PHONES_NUMBER_INDEX);  

        // 当手机号码为空的或者为空字段 跳过当前循环  

        if (TextUtils.isEmpty(phoneNumber))  

            continue;  

        // 得到联系人名称  

        String contactName = phoneCursor  

            .getString(PHONES_DISPLAY_NAME_INDEX);  

        //Sim卡中没有联系人头像  

        mContactsName.add(contactName);  

        mContactsNumber.add(phoneNumber);  

        }  

        phoneCursor.close();  

    }  

    }  

    class MyListAdapter extends BaseAdapter {  

    public MyListAdapter(Context context) {  

        mContext = context;  

    }  

    public int getCount() {  

        //设置绘制数量  

        return mContactsName.size();  

    }  

    @Override  

    public boolean areAllItemsEnabled() {  

        return false;  

    }  

    public Object getItem(int position) {  

        return position;  

    }  

    public long getItemId(int position) {  

        return position;  

    }  

    public View getView(int position, View convertView, ViewGroup parent) {  

        ImageView iamge = null;  

        TextView title = null;  

        TextView text = null;  

        if (convertView == null) {  

        convertView = LayoutInflater.from(mContext).inflate(  

            R.layout.colorlist, null);  

        iamge = (ImageView) convertView.findViewById(R.id.color_image);  

        title = (TextView) convertView.findViewById(R.id.color_title);  

        text = (TextView) convertView.findViewById(R.id.color_text);  

        }  

        //绘制联系人名称  

        title.setText(mContactsName.get(position));  

        //绘制联系人号码  

        text.setText(mContactsNumber.get(position));  

        //绘制联系人头像  

        iamge.setImageBitmap(mContactsPhonto.get(position));  

        return convertView;  

    }  

    }  

}  

列表的布局文件

<?xml version="1.0" encoding="utf-8"?>    

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    

    android:layout_width="fill_parent" android:layout_height="wrap_content">    

    <ImageView android:id="@+id/color_image"    

        android:layout_width="40dip" android:layout_height="40dip" />    

    <TextView android:id="@+id/color_title"    

        android:layout_width="fill_parent" android:layout_height="wrap_content"    

        android:layout_toRightOf="@+id/color_image"    

        android:layout_alignParentBottom="true"    

        android:layout_alignParentRight="true" android:singleLine="true"    

        android:ellipsize="marquee"     

        android:textSize="15dip"  />    

    <TextView android:id="@+id/color_text"    

        android:layout_width="fill_parent" android:layout_height="wrap_content"    

        android:layout_toRightOf="@+id/color_image"    

        android:layout_below="@+id/color_title"    

        android:layout_alignParentBottom="true"    

        android:layout_alignParentRight="true"     

        android:singleLine="true"    

        android:ellipsize="marquee"     

        android:textSize="20dip" />    

</RelativeLayout>

posted @ 2013-07-03 14:44  最後的輕語  阅读(250)  评论(0编辑  收藏  举报