本篇文章給大家分享的是有關(guān)怎么在Android中實(shí)現(xiàn)微信加載H5頁(yè)面進(jìn)度條,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、中牟網(wǎng)絡(luò)推廣、微信小程序、中牟網(wǎng)絡(luò)營(yíng)銷、中牟企業(yè)策劃、中牟品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供中牟建站搭建服務(wù),24小時(shí)服務(wù)熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com
1-1.自定義類繼承WebView類
class ProgressWebView(context: Context, attr: AttributeSet) : WebView(context, attr) { /** *xml布局中使用,所以用兩個(gè)構(gòu)造參數(shù)的構(gòu)造函數(shù) */ private var progressBar: ProgressBar? = null /** *初始化屬性操作 */ init { /** *設(shè)置ProgressBar是橫向 */ progressBar = ProgressBar(context, null, android.R.attr.progressBarStyleHorizontal) /** *設(shè)置進(jìn)度條屬性 */ progressBar!!.progressDrawable = context.resources.getDrawable(R.drawable.webview_hori_progress) /** *設(shè)置ProgressBar的布局參數(shù) */ val layoutParams = FrameLayout.LayoutParams(LayoutParams.MATCH_PARENT, 10, 0) /** *綁定參數(shù) */ progressBar!!.layoutParams = layoutParams /** *將ProgressBar添加到WebView上 默認(rèn)頭部 */ addView(progressBar) /** *設(shè)置WebView輔助類WebChromeClient,獲取實(shí)時(shí)加載進(jìn)度 */ setWebChromeClient(object : WebChromeClient() { override fun onProgressChanged(webview: WebView?, progress: Int) { super.onProgressChanged(webview, progress) Log.d("progressView", progress.toString()) if (progress == 100) progressBar!!.visibility = View.GONE else { progressBar!!.visibility = View.VISIBLE /** *設(shè)置進(jìn)度參數(shù) */ progressBar!!.progress = progress } } }) } }
看下設(shè)置的加載進(jìn)度條的屬性,webview_hori_progress.xml
1-2.xml 布局中引用
1-3.代碼實(shí)現(xiàn)
/** *android kotlin 的拓展,導(dǎo)入此包 使用到的組件不用findViewById */ import kotlinx.android.synthetic.main.activity_main.* class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) /** *WebView設(shè)置屬性 */ val setting = wvProgress.settings /** *本地緩存無(wú)則網(wǎng)絡(luò) */ setting.cacheMode = WebSettings.LOAD_CACHE_ELSE_NETWORK /** *設(shè)置識(shí)別javascript代碼 */ setting.javaScriptEnabled = true /** *縱向scrollbar去除 */ wvProgress.isVerticalScrollBarEnabled =false /** *加載頁(yè)面 */ wvProgress.loadUrl("https://blog.csdn.net/") } }
以上就是怎么在Android中實(shí)現(xiàn)微信加載H5頁(yè)面進(jìn)度條,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。