In questo articolo vedremo come aggiornare la pagina web.
Nel precedente articolo abbiamo visto come aggiungere la ProgressBar WebView per visualizzare il caricamento della pagina web all'interno della nostra app, per aggiungere l'aggiornamento della pagina (refresh o reload) occorre modificare e aggiungere alcune righe di codice al file menu_main.xml
nel file menu_main.xml è necessario modificare le righe 5 e 6 come mostrato
e modificare anche il file MainActivity.kt
Aggiungere le righe di codice dalla riga 63 alla riga 70.
Questa è la riga di codice che permette di ricaricare la pagina Web all'interno della WebView senza generare voci di cronologia
oppure è possibile utilizzare questa riga di codice
Nel precedente articolo abbiamo visto come aggiungere la ProgressBar WebView per visualizzare il caricamento della pagina web all'interno della nostra app, per aggiungere l'aggiornamento della pagina (refresh o reload) occorre modificare e aggiungere alcune righe di codice al file menu_main.xml
e modificare anche il file MainActivity.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.dm.tutorialwebview3 | |
import android.graphics.Bitmap //importazione della Classe: Bitmap | |
import android.os.Bundle | |
import android.support.v7.app.AppCompatActivity; | |
import android.view.Menu | |
import android.view.MenuItem | |
import android.view.View | |
import android.webkit.WebChromeClient //importazione della Classe: WebChromeClient | |
import android.webkit.WebView //importazione della Classe: WebView | |
import android.webkit.WebViewClient //importazione della Classe: WebView | |
import kotlinx.android.synthetic.main.activity_main.* | |
import kotlinx.android.synthetic.main.content_main.* | |
class MainActivity : AppCompatActivity() { | |
var webview: WebView? = null | |
override fun onCreate(savedInstanceState: Bundle?) { | |
super.onCreate(savedInstanceState) | |
setContentView(R.layout.activity_main) | |
setSupportActionBar(toolbar) | |
webview = findViewById(R.id.myweb) | |
webview!!.webViewClient = WebViewClient() | |
webview!!.settings.javaScriptEnabled = true | |
webview!!.webChromeClient = WebChromeClient() | |
webview!!.settings.domStorageEnabled = true | |
webview!!.settings.builtInZoomControls = true | |
webview!!.settings.setSupportZoom(true) | |
webview!!.overScrollMode = WebView.OVER_SCROLL_NEVER | |
webview!!.settings.useWideViewPort = true | |
webview!!.setInitialScale(1) | |
webview!!.loadUrl("https://davidetech.blogspot.com") | |
if(webview != null) | |
{ | |
webview!!.webViewClient = object: WebViewClient(){ | |
override fun onPageStarted(view: WebView?, url: String?, favicon: Bitmap?) { | |
progressBar.visibility = View.VISIBLE | |
super.onPageStarted(view, url, favicon) | |
} | |
override fun onPageFinished(view: WebView?, url: String?) { | |
progressBar.visibility = View.GONE | |
super.onPageFinished(view, url) | |
} | |
} | |
} | |
} | |
override fun onCreateOptionsMenu(menu: Menu): Boolean { | |
// Inflate the menu; questo aggiunge elementi alla barra delle azioni se è presente. | |
menuInflater.inflate(R.menu.menu_main, menu) | |
return true | |
} | |
override fun onOptionsItemSelected(item: MenuItem): Boolean { | |
// Gestisci i clic degli elementi della barra delle azioni qui. | |
// La barra delle azioni gestirà automaticamente i clic sul pulsante Home / Su, | |
// purché si specifichi un'attività principale in AndroidManifest.xml. | |
when (item.itemId) { //modificare questa riga in questo modo | |
R.id.action_refresh -> { //action_refresh è il nome (id) della voce a menù | |
//in questo modo viene ricaricata la pagina web senza aggiungere voci di cronologia | |
webview!!.loadUrl( "javascript:window.location.reload( true )" ) | |
} | |
} | |
return true //aggiungere questa riga di codice alla fine dell'istruzione when | |
} | |
} |
Questa è la riga di codice che permette di ricaricare la pagina Web all'interno della WebView senza generare voci di cronologia
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
webview!!.loadUrl( "javascript:window.location.reload( true )" ) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
webview!!.loadUrl(webview!!.getUrl().toString()) |
Download Project | ![]() |
Download file APK | ![]() |
Commenti
Posta un commento