2016-12-09 5 views
0

Как я могу назвать WebView на моем фрагменте?
Как вы можете видеть, я назвал это, но у меня есть ошибка. То, что я хочу реализовать, - это веб-страница, открытая в моем приложении.Как добавить веб-представление в файл фрагмента?

Вот код, я использую:

package sampleapp.razen.com.sampleapp; 


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


/** 
* A simple {@link Fragment} subclass. 
*/ 
public class GeoNjoroFragment extends Fragment { 


    public GeoNjoroFragment() { 

     // Required empty public constructor 
    } 



    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
          Bundle savedInstanceState) { 

     View view = inflater.inflate(R.layout.fragment_geo_njoro, container, false); 

     WebView myWebView = (WebView)view.findViewById(sampleapp.razen.com.sampleapp.R.id.webview); 
     myWebView.getSettings().setLoadsImagesAutomatically(true); 
     myWebView.getSettings().setJavaScriptEnabled(true); 
     myWebView.getSettings().setDomStorageEnabled(true); 
     myWebView.getSettings().setBuiltInZoomControls(true); 
     myWebView.getSettings().setSupportZoom(true); 
     myWebView.loadUrl("http://www.google.com/"); 
// Inflate the layout for this fragment 
     return view; 

    } 



} 

Вот образ ошибки я получаю:

Image of Error

ответ

2

Попробуйте этот код. Прежде всего вам нужно раздуть ваш взгляд, а затем использовать метод findViewById(). Добавить это разрешение использует-разрешение андроида: name = "android.permission.INTERNET" в файл Androidmanifest.xml.

View view = inflater.inflate(R.layout.fragment_geo_njoro, container, false); 

    WebView myWebView = (WebView)view.findViewById(sampleapp.razen.com.sampleapp.R.id.webview); 
     myWebView.getSettings().setLoadsImagesAutomatically(true); 
     myWebView.getSettings().setJavaScriptEnabled(true); 
     myWebView.getSettings().setDomStorageEnabled(true); 
     myWebView.getSettings().setBuiltInZoomControls(true); 
     myWebView.getSettings().setSupportZoom(true); 
     myWebView.loadUrl("http://www.hivisasa.com/wb/nakuru/news/113249"); 
// Inflate the layout for this fragment 
return view; 
+0

это работает, но на моем телефоне Android он показывает веб-страницу недоступно, что может быть причиной (net ;; ERR_CACHE_MISS) –

+0

@FrancisNdirangu Ответ обновлен. Попробуйте сейчас –

+0

Я пробовал, просто посмотрел обновление изображения на моем сообщении об ошибке. У меня есть –

0

U не связывают вид так, что WebView не может найти вид связывать, оно должно быть:

Посмотреть вид = inflater.inflate (R.layout.fragment_geo_njoro, контейнер, ложь); WebView myWebView = (WebView) view.findViewById (sampleapp.razen.com.sampleapp.R.id.webview);

+0

как мне открыть html в моем макете ?? –

+0

, если это статическая строка html, вы можете сделать это, используя, например, textView.setText (Html.fromHtml (stringHtml)); если это URL-адрес, PLS использовать webview, чтобы сделать это. – Riven

Смежные вопросы