我有包含在我的活动中的菜单 xml,我使用 onClick 属性而不是绑定每个 startActivity。
我的问题是,如何在 xml onClick attr 上定义以调用例如位于我的 mainActivity 上的方法?
我想过类似 android:onClick="mainActivity.doSomething" 但它不起作用。
我有包含在我的活动中的菜单 xml,我使用 onClick 属性而不是绑定每个 startActivity。
我的问题是,如何在 xml onClick attr 上定义以调用例如位于我的 mainActivity 上的方法?
我想过类似 android:onClick="mainActivity.doSomething" 但它不起作用。
在 xml 中使用 onclick 是个坏主意。事实是它只试图找到当前类正在使用它的方法。如果您真的想这样做,一种方法是:
开始活动:
public void callOtherMethod(){
mainActivity.doStuff();
}
主要活动:
public static void doStuff(){
//dosomething.
}
开始活动.xml:
android:onClick="callOtherMethod"
你的 doStuff 方法也必须是静态的,除非你可以获得目标方法 Activity 的实例。
我想过类似 android:onClick="mainActivity.doSomething" 但它不起作用。
这很正常,Android仅onClick
在使用该布局文件的当前活动中查找在 xml 布局中声明的方法(无论如何查看其他活动是没有意义的,因为当您调用该方法时,这些活动可能会被破坏)。
我的问题是,如何在 xml onClick attr 上定义以调用例如位于我的 mainActivity 上的方法?
你应该解释你想要做什么。Activity
应该避免从另一个访问方法Activity
,这不是在 Android 中做事的正确方式。