Android實現(xiàn)圓圈倒計時
本文實例為大家分享了Android實現(xiàn)圓圈倒計時的具體代碼,供大家參考,具體內容如下
1. 顯示效果如下
2. 首先是創(chuàng)建shape的xml文件
在res/drawable目錄下創(chuàng)建 shape_round_textview.xml文件,文件代碼如下:
<?xml version="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" ? ? android:shape="oval" ? ? android:useLevel="false"> ? ? <solid ? ? ? ? android:color="#FFFCFC" /> ? ? <stroke ? ? ? ? android:width="1dp" ? ? ? ? android:color="#7468BE" ? ? /> ? ? <size ? ? ? ? android:width="50dp" ? ? ? ? android:height="50dp" ? ? /> </shape>
3.然后就是在Layout布局文件里面使用定義的shape
我自己做的在一個橫向布局的LinearLayout里面把倒計時放到最右邊(中間TextView的目的是把倒計時的TextView擠到最右邊去 )顯示如圖:
布局文件代碼:
<LinearLayout ? ? ? ? android:layout_marginTop="20dp" ? ? ? ? android:orientation="horizontal" ? ? ? ? android:layout_width="match_parent" ? ? ? ? android:layout_height="wrap_content"> ? ? ? ? <ImageButton ? ? ? ? ? ? android:layout_marginLeft="10dp" ? ? ? ? ? ? android:id="@+id/go_back" ? ? ? ? ? ? android:layout_width="36dp" ? ? ? ? ? ? android:layout_height="36dp" ? ? ? ? ? ? android:background="@drawable/go_back" ? ? ? ? ? ? /> ? ? ? ? <TextView ? ? ? ? ? ? android:layout_width="0dp" ? ? ? ? ? ? android:layout_height="wrap_content" ? ? ? ? ? ? android:layout_weight="1" ? ? ? ? ? ? /> ? ? ? ? <TextView ? ? ? ? ? ? android:layout_marginRight="10dp" ? ? ? ? ? ? android:id="@+id/time_down" ? ? ? ? ? ? android:layout_width="50dp" ? ? ? ? ? ? android:layout_height="50dp" ? ? ? ? ? ? android:text="50" ? ? ? ? ? ? android:textSize="15sp" ? ? ? ? ? ? android:gravity="center" ? ? ? ? ? ? android:background="@drawable/shape_round_textview" ? ? ? ? ? ? /> </LinearLayout>
4.最后是java文件里的代碼
public class StateModeActivity extends AppCompatActivity { ? ? private TextView tx_time; ? ?? ? ? @Override ? ? protected void onCreate(Bundle savedInstanceState) { ? ? ? ? super.onCreate(savedInstanceState); ? ? ? ? //隱藏默認標題欄 ? ? ? ? if (getSupportActionBar() != null){ ? ? ? ? ? ? getSupportActionBar().hide(); ? ? ? ? } ? ? ? ? setContentView(R.layout.activity_state_mode); ? ? ? ?? ? ? ? ? tx_time = findViewById(R.id.time_down); ? ? ? ? //倒計時顯示 ? ? ? ? ValueAnimator animator = ValueAnimator.ofInt(50,0); ? ? ? ? //設置時間 ? ? ? ? animator.setDuration(50000); ? ? ? ? //均勻顯示 ? ? ? ? animator.setInterpolator(new LinearInterpolator()); ? ? ? ? animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { ? ? ? ? ? ? @Override ? ? ? ? ? ? public void onAnimationUpdate(ValueAnimator animation) { ? ? ? ? ? ? ? ? int value = (Integer) animation.getAnimatedValue(); ? ? ? ? ? ? ? ? tx_time.setText(value+""); ? ? ? ? ? ? ? ? if(value==0) ? ? ? ? ? ? ? ? ? ? startActivity(new Intent(StateModeActivity.this,MainActivity.class)); ? ? ? ? ? ? } ? ? ? ? }); ? ? ? ? animator.start(); ? ? ? ? }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Android中TabLayout+ViewPager 簡單實現(xiàn)app底部Tab導航欄
TabLayout 是Android com.android.support:design庫的一個控件。本文主要給大家介紹TabLayout+ViewPager 簡單實現(xiàn)app底部Tab布局,需要的的朋友參考下2017-02-02Android?實現(xiàn)自定義圓形進度條的三種常用方法
這篇文章主要介紹了Android?實現(xiàn)自定義圓形進度條的三種常用方法的相關資料,需要的朋友可以參考下2023-03-03Flutter實現(xiàn)笑嘻嘻的動態(tài)表情的示例代碼
這篇文章主要為大家介紹了如何利用Flutter實現(xiàn)笑嘻嘻的動態(tài)表情,文中的示例代碼講解詳細,對我們學習Flutter有一定幫助,感興趣的可以了解一下2022-04-04Android利用CountDownTimer實現(xiàn)倒計時功能 Android實現(xiàn)停留5s跳轉到登錄頁面
這篇文章主要為大家詳細介紹了Android利用CountDownTimer實現(xiàn)倒計時功能,Android實現(xiàn)停留5s跳轉到登錄頁面,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07