【问题标题】:CSS and JavaScript not working in Android WebViewCSS 和 JavaScript 在 Android WebView 中不起作用
【发布时间】:2017-10-20 03:41:20
【问题描述】:

我的 MainActivity.java 文件如下所示:

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        String myUrl = "file:///android_asset/index.html";
        WebView view = (WebView) this.findViewById(R.id.webView);
        view.getSettings().setJavaScriptEnabled(true);
        view.getSettings().setDomStorageEnabled(true);
        view.getSettings().setSaveFormData(true);
        view.setWebChromeClient(new WebChromeClient());
        view.loadUrl(myUrl);
    }
}

现在,activity_main.xml 文件包含以下代码:

<WebView
        android:id="@+id/webView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="0dp" />
</android.support.constraint.ConstraintLayout>

而且,在 html 页面 index.html 中,我一直在链接 CSS 和 JS 文件,如下所示:

<link rel="stylesheet" href="file:///android_asset/css/bootstrap.min.css">
<script src="file:///android_asset/js/popper.min.js"></script>

我看到的是 html 内容;但是,CSS 和 JavaScript 文件根本不起作用。页面看起来很简单。我是 Android 新手,我肯定在这里遗漏了一些重要的东西。

【问题讨论】:

标签: android jquery css webview android-webview


【解决方案1】:

在html 页面index.html 中,使用与您的html 页面相对 的路径名(不是file:///android_asset )。

所以改变这个:

<link rel="stylesheet" href="file:///android_asset/css/bootstrap.min.css">
<script src="file:///android_asset/js/popper.min.js"></script>

到这里:

<link type="text/css" rel="stylesheet" href="css/bootstrap.min.css"/>
<script type="text/javascript" src="js/popper.min.js"></script>

目录结构:

+---assets
¦   +---css
¦   +---js

【讨论】:

    猜你喜欢
    • 2011-11-24
    • 1970-01-01
    • 2018-11-09
    • 2014-07-31
    • 1970-01-01
    • 2011-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多