这是代码 fragment ,
class1.java
public class1 extends ListActivity {
public class1(){}
public testMethod()
{
Toast.makeText(getApplicationContext(),"Inside Method",Toast.LENGTH_SHORT).show();
}
}
class2.java
public class2 extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
class1 c = new class1();
c.testMethod();
}
}
我想从 class2 调用“testMethod”,目前它给出以下错误,
08-04 22:59:27.428: ERROR/AndroidRuntime(1224): FATAL EXCEPTION: main
08-04 22:59:27.428: ERROR/AndroidRuntime(1224): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.assistant/com.assistant.AssistantActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.assistant/com.assistant.addNew}: java.lang.NullPointerException
谢谢。
我有两个选项卡,
Tab1 扩展 Activity (class2.java) => 包含在数据库中添加条目的表单
Tab2 扩展 ListActivity (class1.java) => 包含添加条目的列表
每当通过 Tab1 添加任何条目时,我想刷新 Tab2,并且我在 class2.java 中添加了方法,以使用更新的数据库条目填充列表。
现在,我想在添加条目后从 class1.java 调用该方法。
最佳答案
考虑将该方法设为静态方法。 虽然我不确定是否允许您实例化这样的 Activity,但您是否记得将它们都添加到 Android list 中?
也许getApplicationContext()
返回null
。
关于java - 从另一个 Activity 调用另一个 Activity 的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6946005/