我正在尝试使用 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");
}
}
我遇到的问题是倒数第二行中的 R.id.webView
。它说它由于某种原因无法解析符号,有人知道为什么吗?
我已经尝试过的事情:
- 输入
import android.webkit.WebView;
import android.webkit.WebViewClient; (dont need this one but still got it)
- 改变单词的大小写
webView
(WebView
,Id
而不是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>
谁能帮忙??
原文由 Uros Tadic 发布,翻译遵循 CC BY-SA 4.0 许可协议
由于您还没有发布您的 XML 布局,我只能猜测,但它很可能是您的预编译 R.java 类不包含对该 ID 的引用,因此在您执行以下任一操作之前它无法解析下列的。
在这种情况下,始终在 Android Studio 中使用
Build -> Rebuild Project
。作为最后的手段,使用File -> Invalidate Caches / Restart
。如果以上没有解决问题,请确保您的 资源 ID 已正确声明:
请注意
@
和id
之间的 + 。这可确保创建 ID 并将其放入R.java
文件中。确保之后重新编译。欲了解更多信息:我建议您阅读以下来自 Android 的 API 指南: https ://developer.android.com/guide/topics/ui/declaring-layout.html