Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在另一个java文件中使用主活动中的函数_Java_Android - Fatal编程技术网

在另一个java文件中使用主活动中的函数

在另一个java文件中使用主活动中的函数,java,android,Java,Android,我试图从另一个文件调用主活动中的方法,但它崩溃了。我可以用另一种方式轻松地做到这一点。您不能从另一个活动调用主活动的方法吗 public class MainActivity extends Activity { …. …….. …… public void my_function(String a){ //do some stuff } } package main; public class stuff extends Activity { …. …. … MainActivit

我试图从另一个文件调用主活动中的方法,但它崩溃了。我可以用另一种方式轻松地做到这一点。您不能从另一个活动调用主活动的方法吗

public class MainActivity extends Activity {
….
……..
……

public void my_function(String a){
//do some stuff
 }

}



package main;
public class stuff extends Activity {
….
….
…
MainActivity run = new MainActivity();
run.my_function(String a);
 }
}

问题是这条线

MainActivity run = new MainActivity();
您从不直接实例化活动,您需要通过
Intent
对象来实例化它们

Intent intent = new Intent(this, MainActivity.class);
如果要实例化一个新的活动,请使用意图。如果要在已经实例化的活动中调用
my_函数
,首先需要获取指向该活动的指针,这在Android中有点棘手

此外,您想从另一个活动中调用一个方法这一事实是设计糟糕的标志,或者您不完全了解Android的操作方式


考虑是否有其他方法可以用于您的目的。

如果您希望从不同的类调用方法,请创建一个单独的类 并封装逻辑。将活动更多地视为视图控制器、逻辑 应该在别的地方

对不起,我的英语,希望这有帮助。
Steve

请发布实际代码,因为这样形成的“问题”是绝对不清楚的。