gpt4 book ai didi

java - 如何从我的 Android 应用程序中的另一个 Activity 访问主 webview 实例?

转载 作者:行者123 更新时间:2023-11-30 03:43:19 25 4
gpt4 key购买 nike

我使用 PhoneGap 创建了一个 Android 应用程序。 MainActivity 看起来像这样:

MainActivity.java

import org.apache.cordova.*;
import android.annotation.SuppressLint;
import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MainActivity extends DroidGap {
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
super.loadUrl("file:///android_asset/www/index.html");
}
}

此外,我还有另一个 Activity ,当我的 index.html 中的某个 JavaScript 事件发生时,它会被调用。在这种情况下,onCreate(Bundle b) 被调用:

MyUriActivity.java

import android.app.Activity;
import android.os.Bundle;

public class MyUriActivity extends Activity {
@Override
public void onCreate(Bundle b){
super.onCreate(b);

// I want to access appView here, so I can call
// appView.loadUrl("file:///android_asset/www/index.html");
}
}

如上评论所示,我想在发生此事件时重新打开 index.html 但我不知道如何访问 webview 实例。

我该怎么做?

最佳答案

要在您的两个操作之间进行通信,您应该使用 Intents

它们允许您将自定义数据放入消息中并将其发送到另一个 Action,如下所示:

Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(android.content.Intent.EXTRA_TEXT, "News for you!");
startActivity(intent);

米。 Lars Vogel 在这方面有很多很好的例子(上面的那个摘自他的博客

http://www.vogella.com/articles/AndroidIntent/article.html

如果我正确理解您的问题,您希望在 MyUriActivity 中发生某些事情时让 MainActivity 显示一些东西(已经加载的 WebView)。您应该在 MyUriActivity 中创建一个 Intent ,然后将其发送到 MainActivity。

关于java - 如何从我的 Android 应用程序中的另一个 Activity 访问主 webview 实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15412180/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com