2012-05-17 105 views
0
public class ImportContactsActivity extends Activity { 
/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    Button pickContact = (Button) findViewById(R.id.contacts); 
    pickContact.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View view) { 

      Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI); 
      startActivityForResult(intent, 1); 
     } 
    }); 
} 

public void onActivityResult(int reqCode, int resultCode, Intent data) { 

    super.onActivityResult(reqCode, resultCode, data); 

    switch (reqCode) { 
    case (1) : 
     if (resultCode == Activity.RESULT_OK) { 
     Uri contactData = data.getData(); 
     Cursor c = managedQuery(contactData, null, null, null, null); 

     if (c.moveToFirst()) { 
      String name = c.getString(c.getColumnIndexOrThrow(People.NAME)); 
      TextView contactView = (TextView) findViewById(R.id.contactView); 
      contactView.setText(name.toString()); 
     } 
     } 
     break; 
    } 
} 

我正在開發Android應用程序,並且我正在將手機通訊錄導入到我的應用程序中,用戶單擊所選聯繫人後,聯繫人將顯示在TextView中,並且電話號碼將存儲在sharedpreferences中。 。我可以知道如何實現它嗎?謝謝如何從所選聯繫人中提取電話號碼?

回答

1

你試過了嗎?

Uri contactData = data.getData(); 
Cursor cursor = managedQuery(contactData, null, null, null, null); 
cursor.moveToFirst(); 
     String name = cursor.getString(cursor.getColumnIndexOrThrow(People.NAME)); 
     String number = cursor.getString(cursor.getColumnIndexOrThrow(People.NUMBER)); 
     String email = cursor.getString(cursor.getColumnIndexOrThrow(People.PRIMARY_EMAIL_ID)); 
     contactName.setText(name); 
     contactNumber.setText(number); 
     contactEmail.setText(email); 

對於SharedPreferences商店...

// We need an Editor object to make preference changes. 
    // All objects are from android.context.Context 
    SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); 
    SharedPreferences.Editor editor = settings.edit(); 
    editor.putString("phonenumber", number); 

    // Commit the edits! 
    editor.commit(); 

上面的代碼只是爲了理解..

+0

感謝您的信息,我需要在清單中添加一些東西嗎? –

+0

是的,添加權限.. user370305

+0

我跟隨你的參考,但當我點擊其中一個聯繫人時,它強制關閉我的應用程序... –

相關問題