2010-11-26 68 views
1

我使用以下代碼,以便從手機 獲取聯繫人我得到的名字,但沒有號碼,幫我找出其他聯繫人的領域。我想獲取聯繫人存儲在手機,但得到問題

public class DialActivity extends Activity { 

private ListView mContactList; 

public String[] fields; 
public Cursor cursor; 
public boolean mShowInvisible; 
public Uri uri; 
public String[] projection; 
public String[] selectionArgs; 
public String selection; 
public String sortOrder; 


/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 


    mContactList = (ListView) findViewById(R.id.ListView01); 

    // Populate the contact list 
    populateContactList(); 




} 

    /** 
* Populate the contact list based on account currently selected in the account spinner. 
*/ 
private void populateContactList() { 
    // Build adapter with contact entries 
    Cursor cursor = getContacts(); 
    String[] fields = new String[] { 
      ContactsContract.Data.DISPLAY_NAME 

    }; 
    SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.listrow, cursor, 
      fields, new int[] {R.id.TextView01}); 
    mContactList.setAdapter(adapter); 
} 

/** 
* Obtains the contact list for the currently selected account. 
* 
* @return A cursor for for accessing the contact list. 
*/ 
private Cursor getContacts() 
{ 
    // Run query 
    Uri uri = ContactsContract.Contacts.CONTENT_URI; 
    String[] projection = new String[] { 
      ContactsContract.Contacts._ID, 
      ContactsContract.Contacts.DISPLAY_NAME 
    }; 
    String selection = ContactsContract.Contacts.IN_VISIBLE_GROUP + " = '" + 
      (mShowInvisible ? "0" : "1") + "'"; 
    String[] selectionArgs = null; 
    String sortOrder = ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC"; 

    return managedQuery(uri, projection, selection, selectionArgs, sortOrder); 
} 

}

在上面的代碼我使用的是自定義的ListRow佈局和顯示各行中的聯繫人姓名,但要填充具有名稱和相應的編號,這樣我可以做一個列表通過點擊那個listItem來調用這些數字。我知道如何撥打電話,但我沒有號碼。

回答

相關問題