这是我想使用的库:https://github.com/RomainPiel/Shimmer-android
它基本上是一个闪烁的文本视图,但是我想在我的webview加载时显示这个。但是,作为文本视图,shimmer需要一个布局。我应该创建一个新的活动来显示shimmer文本视图,并在web视图加载时显示它吗?
下面是我试图实现这段代码的地方:
webView.setWebViewClient(new WebViewClient(){
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon)
{
// TODO show you progress image
super.onPageStarted(view, url, favicon);
Log.i("WEBVIEW", "Loading");
}
@Override
public void onPageFinished(WebView view, String url)
{
// TODO hide your progress image
super.onPageFinished(view, url);
Log.i("WEBVIEW", "Loading Done");
}
});发布于 2014-06-07 00:35:57
我从来没有使用过WebView,但你的想法看起来不错。
只需使用FrameLayout,就可以利用Z排序的优势(在FrameLayout中,视图是按深度排序的)。如下所示:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android">
<WebView
...Properties
android:layout_width="match_parent"
android:layout_height="match_parent" />
<LinearLayout
...Properties
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.romainpiel.shimmer.ShimmerTextView
android:id="@+id/shimmer_tv"
android:text="@string/shimmer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#444"
android:textSize="50sp"/>
</LinearLayout>
</FrameLayout>因此,LinearLayout将位于WebView的顶部,并在WebView上使用bringToFront(),并在页面完成加载时隐藏LinearLayout以显示WebView。
看看这个解释这种行为的页面。
https://stackoverflow.com/questions/24092262
复制相似问题