2012-06-11 35 views

回答

0

請查看代碼。

Public ArrayList<String> getNameEmailDetails(){ 
    ArrayList<String> names = new ArrayList<String>(); 
    ContentResolver cr = getContentResolver(); 
    Cursor cur = cr.query(ContactsContract.Contacts.CONTENT_URI,null, null, null, null); 
    if (cur.getCount() > 0) { 
     while (cur.moveToNext()) { 
      String id = cur.getString(cur.getColumnIndex(ContactsContract.Contacts._ID)); 
      Cursor cur1 = cr.query( 
        ContactsContract.CommonDataKinds.Email.CONTENT_URI, null, 
        ContactsContract.CommonDataKinds.Email.CONTACT_ID + " = ?", 
          new String[]{id}, null); 
      while (cur1.moveToNext()) { 
       //to get the contact names 
       String name=cur1.getString(cur1.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME)); 
       Log.e("Name :", name); 
       String email = cur1.getString(cur1.getColumnIndex(ContactsContract.CommonDataKinds.Email.DATA)); 
       Log.e("Email", email); 
       if(email!=null){ 
        names.add(name); 
       } 
      } 
      cur1.close(); 
     } 
    } 
    return names; 
} 
+0

讓我直接使用此代碼按鈕點擊? – BigBoss

+0

是的,這是可能的.. –

+0

你的代碼有一些錯誤我試了按鈕上的整個代碼點擊 – BigBoss

0

嘗試以下,

package stack.examples; 

import java.util.ArrayList; 
import android.app.Activity; 
import android.content.ContentResolver; 
import android.database.Cursor; 
import android.os.Bundle; 
import android.provider.ContactsContract; 
import android.provider.ContactsContract.CommonDataKinds.Email; 
import android.view.View; 
import android.widget.ArrayAdapter; 
import android.widget.Button; 
import android.widget.ListView; 

public class StackOverFlowGetContactsActivity extends Activity { 

    ListView lvItem; 
    private Button btnAdd; 
    String displayName="", emailAddress="", phoneNumber=""; 
    ArrayList<String> contactlist=new ArrayList<String>(); 
    ArrayAdapter<String> itemAdapter; 


    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     lvItem = (ListView)this.findViewById(R.id.listView_items); 
     btnAdd = (Button)this.findViewById(R.id.btnAddItem); 
     itemAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,contactlist); 
     lvItem.setAdapter(itemAdapter); 
     btnAdd.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       GetEmails(); 
      } 
     }); 
    } 

    private void GetEmails() 
    { 
     ContentResolver cr =getContentResolver(); 
     Cursor cursor = cr.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null); 
     while (cursor.moveToNext()) 
     {  
      String id = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID)); 
      Cursor emails = cr.query(Email.CONTENT_URI,null,Email.CONTACT_ID + " = " + id, null, null); 
      while (emails.moveToNext()) 
      {    
       emailAddress = emails.getString(emails.getColumnIndex(Email.DATA)); 
       contactlist.add(emailAddress); 
       itemAdapter.notifyDataSetChanged(); 
      } 
      emails.close(); 

     } 
     cursor.close(); 
    } 
} 
+0

你好ponmalar你在那裏? – BigBoss

+0

@BigBoss:有點忙於我的辦公室的其他作品.... – Ponmalar

+0

好吧,好吧繼續........... – BigBoss

相關問題