我正在参与「兔了个兔」构思投稿大赛,概况请看:「兔了个兔」构思投稿大赛

前言

前面刚更完文就发现,webview页面用的链接还是我的个人页面,但RabbitAPP怎么能增加和兔子不相干的东西呢,所以我使用小东西将自己很喜欢的一个定格动画视频转成GIF图,然后上传到某图库中转化为链接,最后放入WebView页面充任url,最后再把那个很丑的进度条款式给改回水平进度条了。

正篇

操作步骤

首要找到视频,然后下载下来,接着咱们就可以开始网上寻觅在线视频转GIF东西了,我这里推荐:Convertio — 文件转化器,这个东西功用挺强壮,主要是能把转化的文件保存24小时,然后咱们将转好的文件就放入图库中,将得到的url链接地址复制下来,放入咱们的安卓项目中:

private fun loadWeb(){
    binding.vWebView.loadUrl("https://p6-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/d013b4366d5c46af9c90655d2c92c83c~tplv-k3u1fbpfcp-watermark.image?")
}

采用最简略的loadUrl办法,去请求网页,然后在这代码之前,咱们需要对进度条进行控制:

binding.vWebView.webChromeClient = object : WebChromeClient() {
    override fun onProgressChanged(view: WebView?, newProgress: Int) {
        Log.i("onPageStarted", "页面加载")
        binding.progressBar.progress = newProgress
        if (newProgress == 100) {
            binding.progressBar.visibility = View.GONE
        }
    }

当加载到100%时隐藏ProgressBar控件

布局如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".WebViewTest">
    <ProgressBar
        android:id="@+id/progressBar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        style="?android:attr/progressBarStyleHorizontal"
        android:max="100"
        />
    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <WebView
            android:id="@+id/vWebView"
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>
    </FrameLayout>
</LinearLayout>

布局比较简略,就不加以赘述。

作用展现

本篇最重要的当然是作用展现:

总结

GIF真的蛮强壮,感觉和看视频差不多,便是没有音轨,不过加上音频就很像啊,但GIF也很明显有着其缺憾,便是明显画质很低,可这也挡不住兔兔真心爱啊!