Android WebView Tutorial

WebView er et syn som vil se websider inne søknaden din. Du kan også angi HTML streng og kan vise det i søknaden din hjelp WebView. WebView gjør gjør din søknad til en webapplikasjon

For å legge WebView til søknaden din, må du legge til <. WebView >
element til xml layout fil. Syntaksen er som følger −
< WebView xmlns: android = "http://schemas.android.com/apk/res/android" android: id = "+ id /WebView" android: layout_width = " fill_parent "android: layout_height =" fill_parent "/>

For å bruke det, må du få en referanse for dette synet i Java-fil. For å få en referanse, opprette et objekt av klassen WebView. Syntaksen er −
WebView browser = (WebView) findViewById (R.id.webview);

For å laste en nettside url inn i WebView, må du ringe en metode loadUrl (String url )
av WebView klasse, angi den nødvendige url. Syntaksen er:
browser.loadUrl ("http://www.tutorialspoint.com");

Bortsett fra bare lasting url, kan du ha mer kontroll over WebView ved å bruke metodene som er definert i WebView klasse. De er oppført som følger −
Sr.NoMethod & Description1 canGoBack ()

Denne metoden angir WebView har en back historie element.
2 canGoForward ()

Denne metoden angir WebView har frem loggelement .
3 clearHistory ()

Denne metoden vil fjerne WebView forover og bakover historie.
4 ødelegge ()

Denne metoden ødelegge den interne tilstanden av WebView.
5 findAllAsync (String finne)

Denne metoden finne alle forekomster av strengen og markere dem.
6 getProgress ()

Denne metoden får fremdriften for gjeldende side.
7 getTitle ()

Denne metoden returnere tittelen på den aktuelle siden.
8 getUrl ()

Denne metoden returnere url til den aktuelle siden.

Hvis du klikker på en link inne på websiden til WebView, som siden vil ikke bli lastet inni WebView. For å gjøre det du trenger å utvide klasse fra WebViewClient Hotell og overstyre sin metode. Syntaksen er −
private class mybrowser strekker WebViewClient {Override public boolean shouldOverrideUrlLoading (WebView visning, String url) {view.loadUrl (url); return true; }}
Eksempel

Her er et eksempel som demonstrerer bruk av WebView Layout. Det skaper en grunnleggende web-applikasjon som vil be deg om å angi en url, og vil laste denne url nettside i WebView.

For å eksperimentere med dette eksempelet, må du kjøre dette på en faktisk enhet der internett er i gang .
StepsDescription1You vil bruke Android studio for å lage en Android-applikasjon under en pakke com.example.sairamkrishna.myapplication. Mens du oppretter dette prosjektet, må du Target SDK og kompilere med på den nyeste versjonen av Android SDK til å bruke høyere nivåer av APIs.2Modify src /MainActivity.java fil for å legge WebView code.3Modify res /layout /activity_main å legge respektive XML components4Modify den AndroidManifest.xml å legge de nødvendige permissions5Run programmet og velge en som kjører Android-enhet, og installere programmet på den og verifisere resultatene.

Følgende er innholdet i den modifiserte hovedaktivitet filen src /MainActivity.java
.
pakken com.example.sairamkrishna.myapplication, import android.app.Activity, import android.os.Bundle, import android.view.Menu, import android.view.MenuItem, import android.view.View; import android. webkit.WebView, import android.webkit.WebViewClient, import android.widget.Button, import android.widget.EditText, import android.widget.TextView, import android.widget.Toast, import java.io.FileInputStream; import java.io .FileOutputStream; public class MainActivity strekker Aktivitet {Button b1; EditText ed1; private WebView WV1; Override Beskyttet void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); b1 = (Button) findViewById (R.id.button); ed1 = (EditText) findViewById (R.id.editText); WV1 = (WebView) findViewById (R.id.webView); wv1.setWebViewClient (ny mybrowser ()); b1.setOnClickListener (ny View.OnClickListener () {Override public void onClick (Vis v) {String url = ed1.getText () toString ();.. wv1.getSettings () setLoadsImagesAutomatically (true); wv1.getSettings () .setJavaScriptEnabled (true); wv1.setScrollBarStyle (View.SCROLLBARS_INSIDE_OVERLAY); wv1.loadUrl (url);}}); } Private class mybrowser strekker WebViewClient {Override public boolean shouldOverrideUrlLoading (WebView visning, String url) {view.loadUrl (url); return true; }}Override Public boolean onCreateOptionsMenu (Meny menyen) {//Blås menyen; dette legger til elementer i handlingsfeltet hvis det er til stede. . getMenuInflater () blåse (R.menu.menu_main, menyen); return true; }Override Public boolean onOptionsItemSelected (MENUITEM element) {//Håndtak handlingen bar varen klikk her. Handlingsfeltet vil //automatisk håndtere klikker på Hjem /Opp-knappen, så lenge //som du angir en forelder aktivitet i AndroidManifest.xml. int id = item.getItemId (); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) {return true; } Returnere super.onOptionsItemSelected (element); }}

Følgende er endret innholdet i xml res /layout /activity_main.xml
< RelativeLayout xmlns:. android = "http://schemas.android.com/apk/res /Android "xmlns: verktøy =" http://schemas.android.com/tools "android: layout_width =" match_parent "android: layout_height =" match_parent "android: paddingLeft =" @ dimen /activity_horizontal_margin "android: paddingRight =" @ dimen /activity_horizontal_margin "android: paddingTop =" @ dimen /activity_vertical_margin "android: paddingBottom =" @ dimen /activity_vertical_margin "verktøy: kontekst =" MainActivity ">. < TextView android: text = "WebView" android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: id = "+ id /textview" android: Tekststørrelse = "35dp" android: layout_alignParentTop = "true" android : layout_centerHorizontal = "true" /> < TextView android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "Tutorials point" android: id = "+ id /textView" android: layout_below = "+ id /textview" android: layout_centerHorizontal = "true" android: textcolor = "# ff7aff24" android: Tekststørrelse = "35dp" /> < EditText android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: id = "+ id /EditText" android: hint = "Enter Text" android: fokuserbar = "true" android: textColorHighlight = "# ff7eff15 "android: textColorHint =" # ffff25e6 "android: layout_marginTop =" 46dp "android: layout_below =" + id /bildeVis "android: layout_alignParentLeft =" true "android: layout_alignParentStart =" true "android: layout_alignRight =" + id /bildeVis "android: layout_alignEnd =" + id /bildeVis "/> < Imageview android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: id = "+ id /bildeVis" android: src = "@ teikne /abc" android: layout_below = "+ id /textView" android : layout_centerHorizontal = "true" /> < Button android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "Enter" android: id = "+ id /knapp" android: layout_alignTop = "+ id /EditText" android: layout_toRightOf = "+ id /bildeVis" android: layout_toEndOf = "+ id /bildeVis" /> < WebView android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: id = "+ id /WebView" android: layout_below = "+ id /knapp" android: layout_alignParentLeft = "true" android: layout_alignParentStart = "true" android: layout_alignParentRight = "true" android: layout_alignParentEnd = "true" android: layout_alignParentBottom = "true" /> < /RelativeLayout >

Følgende er innholdet i res /verdier /string.xml
. < resources > < string name = "APP_NAME" > My Application < /string > < string name = "hello_world" > Hei, verden <! /string > < string name = "action_settings" > Innstillinger < /string > < /ressurser >

Følgende er innholdet av AndroidManifest.xml
fil
. <? xml version = "1.0 "encoding =" utf-8 "> < manifest xmlns:? android =" http://schemas.android.com/apk/res/android "pakken =" com.example.sairamkrishna.myapplication "> < uses- tillatelse android: name = "android.permission.INTERNET" /> < søknad android: allowBackup = "true" android: icon = "@ Mipmap /ic_launcher" android: label = "@ streng /APP_NAME" android: tema = "@ stil /AppTheme" > < aktivitet android: ". MainActivity" name = android: label = "@ streng /APP_NAME" > < intent-filter > < handling android: name = "android.intent.action.MAIN" /> < kategori android: name = "android.intent.category.LAUNCHER" /> < /intent-filter > < /aktivitets > < /søknad > < /manifest >

La oss prøve å kjøre WebView søknad. For å kjøre programmet fra Android studio, åpne en av prosjektets aktivitets filer, og klikk Kjør ikonet fra verktøylinjen. Android studio vil vise som vist nedenfor

Nå bare angi en url på url-feltet og trykker på bla-knappen som vises, for å lansere nettstedet. Men før det må du sørge for at du er koblet til internett. Etter å ha trykket på knappen, vil følgende skjerm vises −

Merk. Ved bare å endre url i url-feltet, vil WebView åpne ønsket nettsted.

Over bildet viser WebView av tutorialspoint.com