Веб-просмотр не инициализируется

Когда я когда-либо пытаюсь использовать веб-представление, он дает мне исключение нулевого указателя, мой код:

import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebChromeClient;
import android.webkit.WebView;

public class Main extends Activity {
    WebView webView;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        webView = (WebView)findViewById(R.id.webView);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.setWebChromeClient(new WebChromeClient());
        webView.loadUrl("file:///android_asset/www/index.html");
    }
}

Журналы:

02–18 22:08:06.224: ОШИБКА/AndroidRuntime (355): java.lang.RuntimeException: невозможно запустить активность ComponentInfo {com.test.web/com.test.web.Main}: java.lang.NullPointerException 02- 18 22:08:06.224: ОШИБКА/AndroidRuntime(355): Причина: java.lang.NullPointerException 02-18 22:08:06.224: ОШИБКА/AndroidRuntime(355): в com.test.web.Main.onCreate(Main .java:17)

(там где больше логов просто ни один из них не относился к проблеме)

Кстати, как сделать код похожим на код на stackexchange?

Итак, я предполагаю, что webView инициализируется неправильно?


person Mehran    schedule 19.02.2011    source источник
comment
Не могли бы вы показать ваш файл main.xml   -  person Sankar Ganesh PMP    schedule 19.02.2011
comment
@Sankar Ganesh ‹?xml version=1.0 encoding=utf-8?› ‹LinearLayout xmlns:android=schemas.android.com/apk/res/android android:orientation=vertical android:layout_width=fill_parent android:layout_height=fill_parent › ‹TextView android:layout_width=fill_parent android:layout_height=fill_parent android:text=@+id /webView /› ‹/LinearLayout›   -  person Mehran    schedule 19.02.2011


Ответы (1)


Вы получаете исключение NullPointerException, потому что в файле main.xml вы определили TextView, а не WebView.

Просто измените TextView на WebView

      <?xml version="1.0" encoding="utf-8"?> 
        <LinearLayout xmlns:android="schemas.android.com/apk/res/android"; android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" >

         <WebView android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:id="@+id/webView" />
 </LinearLayout>
person Sankar Ganesh PMP    schedule 19.02.2011
comment
Face Palm нужно уделять больше внимания - person Mehran; 19.02.2011
comment
@Narhem: у вас была ошибка в строке номер 17, я прав, какой код вы набрали в этой строке? - person Sankar Ganesh PMP; 19.02.2011
comment
@Sankar Ganesh: webView.getSettings().setJavaScriptEnabled(true); если я прокомментирую это, это будет следующая строка, хотя webView.setWebChromeClient(new WebChromeClient()); Это наводит меня на мысль, что с webView что-то не так. - person Mehran; 19.02.2011
comment
@Narhem: значит, ошибка не в строке webView=(WebView)findViewById(R.id.webView); также, пожалуйста, убедитесь, что вы определили WebChromeClient() - person Sankar Ganesh PMP; 19.02.2011
comment
@Sankar Ganesh: в этой строке нет ошибки, и я только что сделал. - person Mehran; 19.02.2011
comment
@Narhem: я нашел твою проблему, ты здесь? - person Sankar Ganesh PMP; 19.02.2011
comment
@Sankar Ganesh: да, извини, я заснул, там, где я живу, было 2 часа ночи. но проблема всегда была в webView.getSettings().setJavaScriptEnabled(true); - person Mehran; 19.02.2011