Android使用動畫設置ProgressBar進度的方法
更新時間:2018年01月24日 16:25:10 作者:還有星星
這篇文章主要為大家詳細介紹了Android使用動畫設置ProgressBar進度的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
需求場景:當我們在使用ProgressBar的時候,希望有進度加載的效果,此時我們傳統(tǒng)的做法是使用Thread線程來實現(xiàn),下面我們用屬性動畫來實現(xiàn),簡單粗暴。。哈哈哈
布局文件:
<?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="com.yhx.app.progressbardemo.MainActivity"> <ProgressBar android:layout_marginTop="20dp" android:id="@+id/bar" android:layout_width="match_parent" android:layout_height="8dp" style="?android:attr/progressBarStyleHorizontal" android:progress="10" android:max="100"> </ProgressBar> <Button android:hint="開始" android:onClick="show" android:layout_marginTop="50dp" android:layout_width="match_parent" android:layout_height="50dp"/> <TextView android:id="@+id/tv_bar" android:layout_marginTop="20dp" android:layout_width="100dp" android:text="0" android:gravity="center" android:textSize="38dp" android:layout_gravity="center" android:layout_height="100dp"/> <Button android:hint="開始" android:onClick="tvshow" android:layout_marginTop="50dp" android:layout_width="match_parent" android:layout_height="50dp"/> </LinearLayout>
Activity:
public class MainActivity extends AppCompatActivity { private ProgressBar mProgressBar; TextView mtv_bar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mProgressBar = (ProgressBar) findViewById(R.id.bar); mtv_bar = (TextView) findViewById(R.id.tv_bar); setAnimation(mProgressBar, 100); } private void setAnimation(final ProgressBar view, final int mProgressBar) { ValueAnimator animator = ValueAnimator.ofInt(0, mProgressBar).setDuration(5000); animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { @Override public void onAnimationUpdate(ValueAnimator valueAnimator) { view.setProgress((int) valueAnimator.getAnimatedValue()); } }); animator.start(); } private void setTvAnimation(final TextView view, final int mProgressBar) { ValueAnimator animator = ValueAnimator.ofInt(0, mProgressBar).setDuration(5000); animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { @Override public void onAnimationUpdate(ValueAnimator valueAnimator) { view.setText(String.valueOf(valueAnimator.getAnimatedValue())); } }); animator.start(); } public void show(View view) { setAnimation(mProgressBar, 100); } public void tvshow(View view){ setTvAnimation(mtv_bar,240); } }
效果圖:
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- android ListView和ProgressBar(進度條控件)的使用方法
- Android三種方式實現(xiàn)ProgressBar自定義圓形進度條
- Android ProgressBar進度條和ProgressDialog進度框的展示DEMO
- Android ProgressBar進度條使用詳解
- Android編程之ProgressBar圓形進度條顏色設置方法
- Android之ProgressBar即時顯示下載進度詳解
- Android編程實現(xiàn)自定義ProgressBar樣式示例(背景色及一級、二級進度條顏色)
- Android ProgressBar直線進度條的實例代碼
- Android編程實現(xiàn)類似于圓形ProgressBar的進度條效果
- Android開發(fā)之ProgressBar字體隨著進度條的加載而滾動
相關文章
Android編程設置TextView顏色setTextColor用法實例
這篇文章主要介紹了Android編程設置TextView顏色setTextColor用法,結合實例形式分析了Android設置TextView顏色setTextColor、ColorStateList等方法的使用技巧與布局文件的設置方法,需要的朋友可以參考下2016-01-01使用ViewPager實現(xiàn)左右循環(huán)滑動及滑動跳轉(zhuǎn)
今天實現(xiàn)了左右滑動,至于在最后一頁滑動跳轉(zhuǎn),這個也做了但是效果不是太好,也希望有實現(xiàn)的朋友能夠分享下2013-01-01Android?nonTransitiveRClass資源沖突問題淺析
這篇文章主要介紹了Android?nonTransitiveRClass資源沖突問題,別搞錯了,nonTransitiveRClass不能解決資源沖突,需要的朋友們下面隨著小編來一起學習吧2022-12-12Android引用開源框架通過AsyncHttpClient實現(xiàn)文件上傳
這篇文章主要介紹了Android引用開源框架通過AsyncHttpClient實現(xiàn)文件上傳,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-01-01