java - 如何通过多个视图调用“setOnClickListener”方法?
问题描述
我的页面中有多个Textviews
, activity_main.xml
。我只声明了一个OnClickListener
用于所有 Textviews,如下所示:
public class NumbersClickListener implements View.OnClickListener {
String text = "";
@Override
public void onClick(View view){
Toast.makeText(view.getContext(),"Hi", Toast.LENGTH_SHORT).show();
}
}
然后,我想从多个视图中调用此方法。如下代码:
TextView textview1 = (TextView) findViewById(R.id.textview1);
textview1 .setOnClickListener(clickListener);
TextView textview1 = (TextView) findViewById(R.id.textview2);
textview2 .setOnClickListener(clickListener);
那么如何为不同的视图制作不同的吐司呢?
解决方案
您可以通过以下方式找到您当前在onClick(View view)
方法中单击的视图:
@Override
public void onClick(View view){
if(view.getId() == R.id.textView1){
Toast.makeText(view.getContext(),"Hi First", Toast.LENGTH_SHORT).show();
}
else if(view.getId() == R.id.textView2){
Toast.makeText(view.getContext(),"Hi Second", Toast.LENGTH_SHORT).show();
}
}
推荐阅读
- java - 无法在 Windows 中使用 java VisualVM 连接到包含 java 1.8.0 的远程 ubuntu 机器
- spring-boot - 使用 Springboot webclient 反序列化 OffsetDateTime
- c# - 提取特定标题下的文本或仅提取 listItems
- flutter - 如何在颤动中绘制半个图标
- python - 我需要将 python 脚本与库集成到 spring-boot 应用程序
- flutter - 异步任务不在 WorkManagers CallbackDispatcher 中工作
- android - AndroidViewModel 按需取消作业
- swiftui - NavigationView SwiftUI 中的 NavigationView
- python - 使用命名参数调用方法会导致“参数的多个值”错误
- python - 如何识别该数据框在熊猫中有重复的列名?