无法在Android Studio上解析符号WebView

Uro*_*dic 2 android webview

我正在尝试使用HTML / CSS / Javascript创建应用程序,并且在MainActivity.java中运行它:

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebView;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        WebView webView = (WebView)findViewById(R.id.webView); #The line in question
        webView.loadUrl("file:///android_asset/www/index.html");
    }
}
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是R.id.webView倒数第二行。就是说由于某种原因它不能解析符号,有人知道为什么吗?

我已经尝试过的事情:

  1. 输入

    import android.webkit.WebView;
    import android.webkit.WebViewClient; (dont need this one but still got it)
    
    Run Code Online (Sandbox Code Playgroud)
  2. 改变字的大写webViewWebViewId而不是id等)

编辑:添加布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="g24.guidedproject.MainActivity">

    <WebView android:layout_height="match_parent"
        android:layout_width="match_parent" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

谁能帮忙?

ant*_*ori 8

因为您还没有发布XML布局,所以我只能猜测,但是它必须最有可能使您预编译的R.java类不保存对该ID的引用,因此,除非您执行其中任一操作,否则它无法解析以下。

  1. 在这种情况下,请始终Build -> Rebuild Project在Android Studio中使用。作为最后的选择,请使用File -> Invalidate Caches / Restart

  2. 如果以上方法不能解决问题,请确保正确声明您的资源ID

<WebView android:id="@+id/webView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"></WebView
Run Code Online (Sandbox Code Playgroud)

请注意,+在两者之间@id。这样可以确保ID已创建并放入R.java文件中。确保之后重新编译。

有关更多信息:我建议您从Android阅读以下API指南:https : //developer.android.com/guide/topics/ui/declaring-layout.html