Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.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 android从另一个活动执行方法_Java_Android - Fatal编程技术网

Java android从另一个活动执行方法

Java android从另一个活动执行方法,java,android,Java,Android,我正在从activityA调用activityB上的方法。 方法从A正确地调用到B,但当我在其中执行webviewB.loadUrl(myUrl)时,应用程序因nullpointerexception而崩溃。如果从activityB执行相同的webviewB方法,则可以正常工作。可能是因为从A到B调用时必须设置上下文,但如何设置呢?哪种方法最好?多谢各位 ActivityA(tabHost)和ActivityB(tabcontent)已正确初始化,ActivityB的webview显示URL1。

我正在从activityA调用activityB上的方法。 方法从A正确地调用到B,但当我在其中执行webviewB.loadUrl(myUrl)时,应用程序因nullpointerexception而崩溃。如果从activityB执行相同的webviewB方法,则可以正常工作。可能是因为从A到B调用时必须设置上下文,但如何设置呢?哪种方法最好?多谢各位

ActivityA(tabHost)和ActivityB(tabcontent)已正确初始化,ActivityB的webview显示URL1。 然后,当收到ActivityA的evet时,我需要从ActivityB在webview上加载URL2

编辑: 在ActivityA上收到事件时

 ActivityB test = new ActivityB();
 test.recalcula();
活动b

@Override
    protected void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);

        setContentView(R.layout.vistaaib); 

        webviewB = (WebView) findViewById(R.id.webviewB);


            webviewB.loadUrl(URL1);

...


public void recalcula (){


        webviewB.loadUrl(URL2);

}

活动之间沟通的最佳方式是使用意图机制。 因此,只要从activityA启动一个intent,就可以与activityB通信,使其loadUrl方法能够运行

或者,对于其他解决方案,您可以阅读以下问题:

按照奥尔蒂斯的建议。或者,为什么不尝试创建一个类,在这个类中创建该方法,然后从两个活动中调用该方法呢

此处webviewB为空..因为webviewB位于layoutB xml中,并且在onCreate()中初始化/膨胀。所以你不能这样做…尝试一些不同的方法我知道我不能!这就是为什么我要求“不同的方法”为什么您需要加载ActivityB的webview???。为什么不将该webview放在ActivityA中呢?由于多种原因,我无法在同一个tabhost activity上设置webview:(如果你能做到这一点,那么你希望
ActivityA
的UI是不可见的?而webview是可见的?对不起,我看不出我现在所做的有什么不同。你能更好地解释一下吗?是的,为什么不可以,我想发布一个详细的方法。但为此,请包括你的方法代码,以及我需要的方法代码。)n你的问题。:)我试图做到具体和清晰。请查看我的编辑。我非常感谢您的帮助。在您调用此方法时,您的webView为空,因此异常是合理的。我不明白为什么需要调用和加载webView,因为其他原因,我必须这样做。当ActivityA上收到事件时,webViewB被重新加载。。。