从下面两图中可以看到重复的两个分组的account_type是不同的,其中值的应该是手机中的分组,无值的是手机卡中的分组。account_type是账户类型的意思。
这个界面是从上面的分组列表界面跳过来的,要先建上面的界面才行。

package com.iteedu.www;
import java.util.ArrayList;
import java.util.HashMap;
import android.app.Activity;
import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import android.widget.AdapterView.OnItemClickListener;
public class GroupContactListActivity extends Activity{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
String id = this.getIntent().getExtras().getString("id");
Cursor cur = this.getContentResolver().query(
ContactsContract.Groups.CONTENT_URI, null,
ContactsContract.Groups._ID+"="+id, null, null);
int columnNumber = cur.getColumnCount();
String cn = "";
if (cur.getCount() > 0) {
cur.moveToFirst();//只查第一条
for (int i = 0; i < columnNumber; i++)
{
String cname = cur.getColumnName(i);
String content = cur.getString(i);
cn = cn + "\n" + cname + ":\t\t" + content;
}
}
cur.close();
TextView tv = new TextView(this);
tv.setText(cn);
setContentView(tv);
}
public void showContact(View v) {
Intent intent1 = new Intent(this,
ContactActivity.class);
String id =
((TextView) v.findViewById(R.id.id)).getText().toString();
intent1.putExtra("id", id);
startActivity(intent1);
}
}