java - 抽屉导航中 webview 的 findViewById 问题

标签 java android xml android-fragments webview

我在使用 setcontentview 和 findviewbyid 时遇到了问题。当用户使用抽屉导航单击黑板按钮时,我正在尝试拉出网页。

fragment .java

import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.webkit.WebView;

public class BlackBoardFragment extends Fragment {

public BlackBoardFragment(){}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    View rootView = inflater.inflate(R.layout.fragment_blackboard, container, false);
    return rootView;
}


@Override
public View onCreate( Bundle savedInstanceState){

    WebView myWebView = (WebView) findViewById(R.id.webview);
    myWebView.loadUrl("http://www.example.com");
    return myWebView;
}
}

和 xml 文件:

<?xml version="1.0" encoding="utf-8"?>
<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>

这几天一直在纠结这个问题。 提前致谢!!!

-大卫

最佳答案

您的 fragment_blackboard.xml 必须包含您的 Webview,请记住您在 Fragment 中:

<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>

此方法必须返回 Void!不查看:

@Override
public View onCreate( Bundle savedInstanceState){

您的代码必须如下所示:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    View rootView = inflater.inflate(R.layout.fragment_blackboard, container, false);
  WebView myWebView = (WebView) rootView.findViewById(R.id.webview);
    myWebView.loadUrl("http://www.example.com");
    return rootView;
}

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
}

和你的布局:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
   xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent"
   android:layout_height="match_parent"/>

   <WebView  
     android:id="@+id/webview"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent"/>

</RelativeLayout>

关于java - 抽屉导航中 webview 的 findViewById 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28637995/

相关文章:

android - 如何获取在使用其 SD 卡的真实设备上运行的 android 应用程序的日志?

android - 在 Django 中处理 JSON 的最佳和简单方法

android - 如何使用 crypto-js 以与在 Angular 中相同的方式在 android 中加密数据

html - 如果 XSLT 中存在标记,则在标记前添加空格

java - 更改 gui 中的面板

java - 如何重构意大利面条式代码

java - 简单的 Xml 框架松散映射不起作用

c# - 在 C# 中序列化类。嵌套XML

java - Findviewbyid 找不到按钮

java - 将现有项目导入eclipse,它会自动将旧版本与新版本 merge