我正在开发一个android应用,并且我试图在该应用中的几乎所有活动上实现HorizontalScrollView
。 (将近50个以上)。
我希望在java文件中定义一个类/变量/函数,然后在XML文件中调用它,这样我不必重新键入/复制和粘贴代码超过50次。
如果我在MainActivity
中定义一个函数,是否可以在其他java / XML文件中使用它?
答案 0 :(得分:3)
在xml文件中,您可以包括其他xml布局。我认为您可以使用它。
答案 1 :(得分:1)
首先,您的应用程序中应仅包含一个Activity
作为入口点,并在不同的窗口中使用Fragments
,这是Google目前正在推动的一个想法。
MainActivity
功能,但不能在XML文件中重用。示例:
定义接口:
public interface MyInterface {
void triggerMainActivityFunction();
}
然后在您的MainActivity
中实现此接口:
public class MainActivity extends Activity implements MyInterface {
...
@Override
public void triggerMainActivityFunction() {
// Do something
}
...
}
在要触发此功能的所有Java类中定义侦听器:
public class SomeClass extends Fragment {
...
private MyInterface listener;
@Override
void onCreate(...) {
listener = (MyInterface) getActivity();
}
// your function to trigger a reusable
// function from Activity when user clicks on something
public void onClick() {
listener.triggerMainActivityFunction();
}
...
}