首页 > 编程知识 正文

android activity生命周期,两个activity跳转生命周期

时间:2023-05-03 07:33:17 阅读:110199 作者:482

通过LifecycleObserver实现自动计数,退出后台时停止计数,再次返回前台时从上次位置开始计数

1 .自定义控件并实现生命周期观察器

import android.content.Context;

import android.os.SystemClock;

import Android.util.attributes et;

import Android.widget.chronometer;

importandroidx.life cycle.life cycle;

importandroidx.life cycle.life cycle observer;

importandroidx.life cycle.onlifecycleevent;

//*

* Chronometer可以实现自动计数

*/

publicclassmychronometerextendschronometerimplementslifecycleobserver {

private static long lastTime;

publicmychronometer (上下文上下文,AttributeSet attrs ) {

super (上下文,attrs );

}

侦听Activity onPause事件

@ onlifecycleevent (life cycle.event.on _ pause )//LifecycleObserver特定的写法

私有语音密码元数据

last time=system clock.elapsed real time (-get base );

停止(;

}

侦听Activity onResume事件

@ onlifecycleevent (life cycle.event.on _ resume ) )。

private void resumeMeter

set base (system clock.elapsed real time ) )- lastTime;

start (;

}

}

正在布局

Android : id=' @ id/chronometer '

安卓: layout _ width=' wrap _ content '

安卓: layout _ height=' wrap _ content '

安卓: text=' hello world!'

安卓:文本大小=' 30sp '

app : layout _ constraint bottom _ tobottomof=' parent '

app : layout _ constraint left _ toleftof=' parent '

app : layout _ constraint right _ torightof=' parent '

app : layout _ constraint top _ toto POF=' parent ' /

2 .在activity中将控件设置为activity生命周期观察者

importandroidx.app compat.app.appcompatactivity;

import android.os.Bundle;

publicclassmainactivityextendsappcompatactivity {

MyChronometer chronometer;

@Override

保护性视频创建(bundlesavedinstancestate )。

super.oncreate (savedinstancestate;

setcontentview (r.layout.activity _ main;

chronometer=findviewbyid (r.id.chronometer;

添加chronometer作为观察者

getLifecycle ().addobserver ) chronometer;

}

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。