Pop-up správy, WebView, Action Bar
Webový prehliadač WebView
OS Android umožňuje vložiť do aktivity vstavaný webový prehliadač – widget. Tento webový prehliadač môžeme použiť pri tvorbe používateľského rozhrania – napísať html kód alebo zobraziť nejakú webovú stránku, ak sme pripojený na internet. Prehliadač je postavený na jadre WebKit, ktoré tvoria jadro prehliadača Safari a Chrome.
Widget WebView sa nachádza v balíku android.webkit.
activity_main.xml
<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
MainActivity.java (obrázok vľavo)
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebView wv = (WebView) findViewById(R.id.webview);
wv.loadUrl("http://www.fpv.umb.sk");
}
MainActivity.java (obrázok vpravo)
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebView wv = (WebView) findViewById(R.id.webview);
wv.loadUrl("http://sk.wikipedia.org/wiki/Bansk%C3%A1_Bystrica");
wv.getSettings().setJavaScriptEnabled(true);
wv.getSettings().setBuiltInZoomControls(true);
wv.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
}
Podobne ako webový prehliadač, aj widget WebView má vlastné nastavenia. Upravením tohto nastavenia môžeme upraviť správanie prehliadača. Keď chceme nastaviť nejakú vlastnosť zavoláme metódu getSettings().
metóda |
popis |
setJavaScriptEnabled() |
boolean metóda, ktorá zapína/vypína JavaScript |
setBuiltInZoomControls() |
boolean metóda, môžeme približovať/oddelovať prehliadač |
setDefaultFontSize() |
nastavenie veľkosti písma |
Metóda setWebViewClient() prepája WebView s aktivitou. Metóda shouldOverrideUrlLoading() vráti hodnotu true, ak chceme požiadavku ošetriť sami alebo false, ak chceme použiť defaultny spôsob (napríklad načítať stránku danú URL – bez URL hlavičky).
Ak chceme zobraziť HTML kód, zavoláme metódu loadData():
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebView wv = (WebView) findViewById(R.id.webview);
String stranka =
"<html>" +
"<body>" +
"<i> HTML text</i>" +
"</body>" +
"</html>";
wv.loadData(stranka,"text/html","UTF-8");
}
Podobne ako webový prehliadač, aj widget WebView má vlastné nastavenia. Upravením tohto nastavenia môžeme upraviť správanie prehliadača. Keď chceme nastaviť nejakú vlastnosť zavoláme metódu getSettings().