如何从另一个类调用MainActivity中的方法?
问题描述:
当在主要活动中声明方法时,如何在另一个类中调用方法startChronometer
?
How do I call the method startChronometer
in another class when the method is declared inside the main activity?
内部MainActivity
:
public void startChronometer() {
mChronometer.start();
showElapsedTime();
}
在另一堂课中,我试图做到这一点:
Inside another class, I tried to do this:
MainActivity mActivity;
mActivity.startChronometer();
但是发生了一个错误,提示:
But an error occurred which said:
java.lang.NullPointerException.
我是否还需要在代码中添加什么?
May I know what more I need to add to the code?
答
您可以通过以下类型的强制转换轻松地从Activity内的任何Fragment调用方法:
You can easily call a method from any Fragment inside your Activity by doing a cast like this:
Java
((MainActivity)getActivity()).startChronometer();
科特林
(activity as MainActivity).startChronometer()
在执行此操作之前,请记住要确保该Fragment的活动实际上是MainActivity.
Just remember to make sure this Fragment's activity is in fact MainActivity before you do it.
希望这会有所帮助!