使用WebView的Android App无法正常工作

时间:2014-06-11 18:49:38

标签: android android-webview

尝试使用WebView,我有以下代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"
    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"
    android:orientation="vertical"
    tools:context="com.example.places.xt.MainActivity$PlaceholderFragment" >

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

</RelativeLayout>

(...)
import android.webkit.WebView;
import android.os.Build;

public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        if (savedInstanceState == null) {
            getSupportFragmentManager().beginTransaction()
                    .add(R.id.container, new PlaceholderFragment()).commit();
        }

        WebView webview = (WebView) findViewById(R.id.webview);
        setContentView(webview);

        String summary = "<html><body style=\"background-color: yellow\">You scored <b>192</b> points.</body></html>";
        webview.loadData(summary, "text/html", null);

    }
(...)

当我点击“运行”以强制构建APK文件,然后在我的手机上下载并启动它时,它会显示“应用程序已停止”。该应用程序的大小只有约760 kB。我认为它不是很多,我想WebView包没有正确导入。可能是什么原因?

测试4.4 Kitkat,Eclipse,Win 7 32位

1 个答案:

答案 0 :(得分:1)

首先,您的webview位于片段布局中,而不是活动布局中。将访问webview的代码移动到片段onCreateView()。请参阅NullPointerException accessing views in onCreate()

其次,删除setContentView(webview)。从当前内容视图中查找视图并将其设置为内容视图是没有实际意义的。