我是Android Dev的新手,在尝试让editText
取出一个联系人时遇到了问题。我已经创建了3个editText
,每个onClickListener()
都会联系,并会向所选联系人发送短信。
我已经尝试了一些我在网上找到的东西,但它们都崩溃了,我真的不明白我在做什么。
我知道我必须创建一个 contact.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
}
});
:
EditText
我的另一个问题是,因为我需要为每个EditText选择一个联系人,我是否必须复制三个{{1}}的相同代码?
选择联系人后,我只想显示联系人的姓名。
任何帮助将不胜感激!
答案 0 :(得分:0)
你可以像我在我的一个应用程序中那样做(我按下按钮点击你并使用你的edittext) 打开联系人
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent= new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
startActivityForResult(intent, PICK_CONTACT);
}
});
然后在用户选择后,您可以在OnActivityResult方法中获取结果并处理联系人uri以加载联系人的详细信息
@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
Set the name of contact in your editText
}
}
break;
}
}