Tôi đang phát triển ứng dụng theo dõi gps trong Android. Tôi đang thực hiện với hiển thị bản đồ n thứ. Bây giờ tôi muốn thực hiện một nút trên đầu trang mà khi nhấp vào sẽ hiển thị các địa chỉ liên lạc, Sau đó, khi tôi chọn liên lạc nó sẽ cho tôi biết vị trí của mình. Hãy giúp tôi với điều này. Cảm ơn bạn.làm cách nào để mở danh sách liên hệ khi tôi nhấp vào nút được xác định trong main.xml
Trả lời
Bạn có thể thiết lập một tổ chức sự kiện trên nút nhấp chuột bằng cách thiết lập một OnClickListener
vào nút với đoạn mã sau, và sử dụng ý định gọi hoạt động ContactPicker:
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent= new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
startActivityForResult(intent, PICK_CONTACT);
}
});
và trong onActivityResult()
quá trình uri xúc để tải chi tiết về tiếp xúc.
@Override
public void onActivityResult(int reqCode, int resultCode, Intent data) {
super.onActivityResult(reqCode, resultCode, data);
switch (reqCode) {
case (PICK_CONTACT) :
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.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
// TODO Fetch other Contact details as you want to use
}
}
break;
}
}
Bạn nên sử dụng startActivityForResult
Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(intent, 1);
Xem "get contact info from android contact picker" để biết thêm thông tin.
nơi nào tôi xác định mã này ... –
+1 để sử dụng 'ContactsContract.Contacts.CONTENT_URI' vì' Contacts.CONTENT_URI' không được chấp nhận. – Darcy
thử mã này
Intent intent = new Intent(Intent.ACTION_DEFAULT, ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(intent, 1);
Sử dụng ACTION_DEFAULT
thay vì ACTION_PICK
.
Chúc may mắn.
Khá chắc chắn đây là cùng một câu hỏi: http://stackoverflow.com/questions/4992564/open-device-contacts-list-at-button-click-event – NotACleverMan
nhờ .. nhưng mà làm tôi xác định mã đó. –
http://stackoverflow.com/questions/9766263/getting-contact-number-using-content-provider-in-android/9883740#9883740 kiểm tra điều này sẽ giúp bạn –