ProgressBar多彩的背景颜色

不废话,先爆照,如下图。




activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context=".MainActivity" >    <Button        android:id="@+id/myButton"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:text="Reload"        />    <ProgressBar        style="?android:attr/progressBarStyleHorizontal"        android:progressDrawable="@drawable/progressbar"        android:id="@+id/myProgressBar"        android:layout_below="@id/myButton"        android:layout_width="match_parent"        android:layout_height="9px"        />    <WebView        android:id="@+id/myWebView"        android:layout_below="@id/myProgressBar"        android:layout_width="match_parent"        android:layout_height="match_parent"        /></RelativeLayout>

progressbar.xml

<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android" >    <item android:id="@android:id/background">        <shape>            <corners android:radius="5dip" />            <gradient                android:angle="0"                android:centerColor="#ff5a5d5a"                android:centerY="0.75"                android:endColor="#ff747674"                android:startColor="#ff9d9e9d" />        </shape>    </item>    <item android:id="@android:id/secondaryProgress">        <clip>            <shape>                <corners android:radius="5dip" />                <gradient                    android:angle="0"                    android:centerColor="#29b6f6"                    android:centerY="0.75"                    android:endColor="#FF5F00"                    android:startColor="#FF5F00" />            </shape>        </clip>    </item>    <item android:id="@android:id/progress">        <clip>            <shape>                <corners android:radius="5dip" />                <gradient                    android:angle="0"                    android:endColor="#8000ff00"                    android:startColor="#FF4040" />            </shape>        </clip>    </item></layer-list>


MainActivity.java文件
package com.example.administrator.testprogressbar;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.webkit.WebChromeClient;import android.webkit.WebView;import android.widget.ProgressBar;public class MainActivity extends AppCompatActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        final ProgressBar bar = (ProgressBar)findViewById(R.id.myProgressBar);        final WebView webView = (WebView)findViewById(R.id.myWebView);        webView.setWebChromeClient(new WebChromeClient() {            @Override            public void onProgressChanged(WebView view, int newProgress) {                if (newProgress == 100) {                    bar.setVisibility(View.INVISIBLE);                } else {                    if (View.INVISIBLE == bar.getVisibility()) {                        bar.setVisibility(View.VISIBLE);                    }                    bar.setProgress(newProgress);                }                super.onProgressChanged(view, newProgress);            }        });        findViewById(R.id.myButton).setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View arg0) {                try {                    Thread.sleep(3000);                    webView.reload();                } catch (InterruptedException e) {                    e.printStackTrace();                }            }        });        final String url = "http://blog.csdn.net/u011068702";        webView.loadUrl(url);    }    @Override    public boolean onCreateOptionsMenu(Menu menu) {        getMenuInflater().inflate(R.menu.menu_main, menu);        return true;    }}

记得加上权限
<uses-permission android:name="android.permission.INTERNET"/>

好了,感兴趣自己测试下。


更多相关文章

  1. Android(安卓)PackageManager 卸载包的方法
  2. Android(安卓)在桌面创建一个快捷方式
  3. Android根据包名获取程序基本信息
  4. 在android中使用junit
  5. Android调用相机相册并显示照片在ImageView
  6. Android(安卓)查看本机外网IP
  7. android 应用程序使用统计
  8. Android(安卓)kill app Process 结束进程代码
  9. android基于AndPermission的权限申请封装类

随机推荐

  1. 你的影响力,往往被忽视
  2. 队列(静态方式)
  3. 病毒与故障:漫谈计算机软件的故障应对
  4. 最全的DevOps工具集合,再也不怕选型了!
  5. 如何优雅地运用位运算实现产品需求
  6. 近几年,你也没干出满意的成绩吗?
  7. 如何优雅地停止一个线程?
  8. 再来一次高考
  9. 导致并发程序出问题的根本原因是什么?
  10. 讲给前端的正则表达式(1):基本概念