我想添加一个使用ACTION_PICK
意图的偏好设置。我的目标是使用偏好获取手机中联系人的电话号码。这可能吗?
我可以从我的活动中运行此代码,但我发现我无法从扩展DialogPreference
的类中运行它。
Intent intentContact = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(intentContact, PICK_CONTACT);
或者有没有办法从Activity
开始新的Preference
?那么Activity
可以执行上面两行代码吗?
答案 0 :(得分:2)
// Get Custom contact Pref
Preference customContact = (Preference)findPreference("custom_contact");
customContact.setOnPreferenceClickListener(new OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
Intent i = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(i, PICK_CONTACT);
return true;
}
});
答案 1 :(得分:0)
您必须在preferences.xml中将联系人首选项定义为“Preference ...”,如果您使用“EditTextPreference ...”,则会显示文本编辑对话框,在这种情况下这不方便。