【发布时间】:2016-12-05 09:34:09
【问题描述】:
我的 Android 应用显示了一个平面图,其中在特定区域设置了透明按钮。我还实现了一个语音识别,它返回一个列表视图。当用户选择一项时,将执行 performClick() 方法,该方法调用 OnClick 方法。 OnClick 方法也被调用,当用户点击显示屏上的特定区域(透明按钮)时
我的问题是,我怎样才能看到按钮是通过 performClick() 还是通过点击显示来点击的?
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
button.setBackgroundColor(Color.GREEN);
}
});
wordsList.setOnItemClickListener(
new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View view,
int position, long id) {
// TODO Auto-generated method stub
Object o = wordsList.getItemAtPosition(position);
String pen = o.toString();
if (pen.equals("String")) {
button.performClick();
Toast.makeText(getApplicationContext(), "You have chosen: " + " " + pen, Toast.LENGTH_LONG).show();
}
}
}
);
我已经找到了那个帖子,但我不知道如何在 Java 中实现它。 how to check if the click is Performclick or not
【问题讨论】:
-
可以查看点击视图的id
-
我会使用简单的标志来区分。在调用 performClick 之前,我将启用该标志。在 onclick 侦听器中,如果它是真的切换标志然后执行任务
-
谢谢。有时这很容易。