java - 如何将 WebView 添加到片段之一
问题描述
我正在尝试添加WebView
到我的 android 应用程序。为此,我正在关注本教程 - https://www.youtube.com/watch?v=TUXui5ItBkM
如果我放入Webview
activity_main,则显示网站,尽管这不是我想要的。
我有 3 个片段,Livestream、NewsArticles 和 Settings。当我WebView
像这样添加到 NewsArticles 片段时:
<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
应用程序崩溃。我不确定问题是什么。我似乎也没有在 android studio 中发现任何错误/错误弹出窗口。这是MainActivity
的代码:
webView = (WebView) findViewById(R.id.webview);
webView.setWebViewClient(new WebViewClient());
webView.loadUrl("https://www.alt-info.com");
我也启用了互联网流量许可。
解决方案
如果您使用的是片段,则必须指定:
替换以下代码
@Override public View onCreateView(@NonNull LayoutInflater inflater,@Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_articles, container, false);
}
有了这个:
@Override public View onCreateView(@NonNull LayoutInflater inflater,@Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_articles, container, false);
webView = (WebView) view.findViewById(R.id.webview);
}
当你使用片段时,你必须说“view.findViewById()”。每次初始化对象时,您都会在“findViewById”前面添加“视图”。
此外,如果应用程序崩溃,Android Studio 中肯定会弹出一个错误。运行后单击“Logcat”并检查是否有任何红色文本。
推荐阅读
- python - 检查数字是否是Python中的素数
- android - 从 DJI Android SDK 获取云台角度
- git - 忽略要在 git 中提交的文件夹
- typescript - TypeScript:不可分配给 boolean 或 PromiseLike
- android - 在 Kotlin Android 中将文件作为公共上传到 S3
- django - Visual Studio 2017 Django 项目问题
- javascript - 您如何在任何网站上运行 Js 文件?
- components - InstallShield - 组件的条件
- regex - 如何在`StringCvt.scanString(RE.findcompiledComment)输入`中访问len和pos
- kotlin - 如何在 Kotlin 中将两个不同的类数据合并为一个