2

正如文件所说

单击视图时要在此视图的上下文中调用的方法的名称。

完美,但是是否可以“以某种方式”创建一个静态方法并在我需要的任何地方使用它,而不是在每个Activity类中定义。是的,我知道在基 Activity 类中定义方法。我正在寻找的只是写方法的全名并让它使用它。可能的 ?

谢谢

4

4 回答 4

2

您不能将静态方法分配给 onClick xml 属性。您必须将您在此处指定的方法添加到使用布局的任何活动中。您可以让每个活动中的该方法调用一个实际处理点击的静态方法,但没有办法完全避免使用实例方法。

于 2013-08-23T09:00:21.657 回答
1

我的建议是创建一个类来处理按钮执行的所有功能,并在 Activity 的 onClick 方法上调用该功能。

例子

public class AppModel {

    public static void button1Function(){
        //do something
    }
}

然后关于你的活动

 public void button1Clicked(View view){
     AppModel.button1Function();
 }

我认为这看起来像 MVC 设计范式。点击这里进一步阅读。

于 2013-08-23T09:00:52.470 回答
1

这是不可能的。Android 在活动实例中搜索此方法。这就是为什么它必须属于一个实例。

于 2013-08-23T08:56:21.740 回答
0

为什么不创建一个具有静态方法的全新类?

你可以在任何你想要的地方加载这个类......

于 2013-08-23T08:54:32.127 回答