【发布时间】:2013-12-19 12:37:10
【问题描述】:
我有 3 个按钮,当我单击其中一个按钮时,它们会打开我的联系人列表。然后我选择某人,我得到一个电话号码,我想将该号码设置为按钮的文本。我的问题是:如何处理在该功能中按下了哪个按钮。 Performclick 对我不起作用。
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (data != null) {
Uri uri = data.getData();
if (uri != null) {
Cursor c = null;
try {
//for get number and name from contacts
c = getContentResolver().query(uri, new String[]{
ContactsContract.CommonDataKinds.Phone.NUMBER,
ContactsContract.Contacts.DISPLAY_NAME },
null, null, null);
if (c != null && c.moveToFirst()) {
number = c.getString(0);
name=c.getString(1);
if(Number1.performClick()){
Toast.makeText(this, "1", Toast.LENGTH_SHORT).show();
}else if(Number2.performClick()){
Toast.makeText(this, "2", Toast.LENGTH_SHORT).show();
}
else if(Number3.performClick()){
Toast.makeText(this, "3", Toast.LENGTH_SHORT).show();
}
}
}
finally {
if (c != null) {
c.close();
}
}
}
}
【问题讨论】:
-
我不清楚“将数字设置为按钮”是什么意思。如果只想设置按钮的标题,请使用 setText(CharSequence) 方法。
-
在 xml 视图中为按钮提供 id 并在
perfrClick.. 时检查它。 -
Bu 像软点击一样执行点击。意味着以编程方式。你知道任何触发事件
标签: android button event-handling