java - Android:从其他类调用 main 中按钮的 OnClick

标签 java android button onclick onclicklistener

假设我的主屏幕有很多按钮。

我想创建一个类,其中所有按钮监听器都在其中,并在每次按下按钮时从我的主方法中调用 onClick。

public class Buttons extends Activity implements OnClickListener {

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

}

public void onClick(View v) {

   Button btn1 = (Button) findViewById(R.id.button1);
   Button btn2 = (Button) findViewById(R.id.button3);


    int viewId = v.getId() ;

    if(viewId == R.id.button1){
           Intent ScrollViewTest = new Intent(this, ScrollViewTest.class);
           startActivity(ScrollViewTest);}
      if(viewId == R.id.button2){
           Intent ScrollViewTest = new Intent(this, CameraTest.class);
           startActivity(CameraTest);}      
    }
    }
}

有没有办法调用 onClick 方法,例如:

Buttons allButtons = new Buttons();
allButtons.onClick(btn1);

还是我的逻辑错误?

................................................

已经检查

calling a method from an onClick listener

How to call onClick(View v) method explicitly in an Android? Is it possible?

Android onClick method

Is there a method to set methods for multiple objects in one go?

最佳答案

public class Buttons extends Activity {

protected void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);

   Button btn1 = (Button) findViewById(R.id.button1);
   Button btn2 = (Button) findViewById(R.id.button3);  // did you mean R.id.button2?

   // Create the onClickListener for btn1
   btn1.setOnClickListener(new View.OnClickListener() {

       public void onClick(View v) {
           Intent ScrollViewTest = new Intent(this, ScrollViewTest.class);
           startActivity(ScrollViewTest);
       }
   });

   // Create the onClickListener for btn2
   btn2.setOnClickListener(new View.OnClickListener() {

       public void onClick(View v) {
           Intent ScrollViewTest = new Intent(this, CameraTest.class);
           startActivity(CameraTest);
       }
   });
}

关于java - Android:从其他类调用 main 中按钮的 OnClick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22677169/

相关文章:

java - 在Dataflow中手动发送PubSub消息

java - 为什么 CSVWriter 和 CSVReader 使用不同的默认转义字符?

android - 为 BitmapFactory.decodeFile 和 BitmapFactory.Options.inBitmap 重用位图

java - java程序退出时如何自动调用函数?

java - 如何使用 g.fillRect 方法在 Java 中创建一个 Rectangle 对象

java - Android 水平轮(自定义)DatePicker 中的问题

android - 覆盖 fragment 中的 setOnClickListener 停止工作

java - 按钮计数器未更新

android在按下搜索按钮@手机时启动用户定义的 Activity

ios - 以编程方式将按钮放置在图像上