android 中 Chronometer 计时器的使用
16lz
2021-01-23
布局:
<Chronometer android:id="@+id/played_time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:textSize="13sp" android:textColor="@color/music_text_white" android:text="00:00"/>代码:
private void countTime() { if ( mRecordTime != 0 ){ //暂停后继续计时 played_time_view.setBase( played_time_view.getBase() + (SystemClock.elapsedRealtime()-mRecordTime) ); }else if ( isForward ){ //快进 seekTime秒 默认+20s if ( seekTime > 0 ){ played_time_view.setBase( played_time_view.getBase() - seekTime*1000 ); }else { played_time_view.setBase( played_time_view.getBase() - 20*1000 ); } isForward = false; }else if ( isReverse ){ //快退seekTime秒 默认-20s long time = 0l; if ( seekTime > 0 ){ time = played_time_view.getBase() + seekTime*1000; }else { time = played_time_view.getBase() + 20*1000; } if ( time > SystemClock.elapsedRealtime() ){ played_time_view.setBase( SystemClock.elapsedRealtime() ); }else { played_time_view.setBase( time ); } isReverse = false; }else if ( isJump ){ played_time_view.setBase( SystemClock.elapsedRealtime() - seekTime*1000); isJump = false; }else { //设置时间基点 played_time_view.setBase( SystemClock.elapsedRealtime() ); } played_time_view.start();}
private void stopCountTime(){ played_time_view.stop(); mRecordTime = SystemClock.elapsedRealtime();}private void resetCountTime(){ played_time_view.setBase( SystemClock.elapsedRealtime() ); played_time_view.stop(); mRecordTime = 0L; mRecordTime = SystemClock.elapsedRealtime();}
更多相关文章
- 控件布局_FrameLayout(网格布局)
- listView显示多种布局 android
- Android Animation 为布局添加动画效果
- android 开发 RecyclerView 横排列列表布局
- 增加滚动布局
- Android 四大组件+五大布局
- android 动态设置布局
- 新浪微博布局学习——活用Android的RelativeLayout
- android分开布局