为了账号安全,请及时绑定邮箱和手机立即绑定

请问要怎么调用activity的onPause()方法,让当前语音播放暂停?

请问要怎么调用activity的onPause()方法,让当前语音播放暂停?

Cats萌萌 2022-06-11 11:07:51
我的adapter中有一个按钮实现的是语音功能,现在我想实现:如果当前activity不在前台(比如来电话),我该怎么调用activity的onPause()方法,让当前语音播放暂停?
查看完整描述

2 回答

?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

onPause 用于由一个Activity转到另一个Activity、设备进入休眠状态(屏幕锁住了)、或者有dialog弹出时

onStop 用于不可见的Activity(有对话框弹出时,这时底下的activity仍然可见,所以此时onStop不会被调用)

从下面的日志日志可以看出区别:

1.从FirstActivity跳到SecondActivity时

FirstAcvity ---> onCreate
FirstAcvity --->onStart
FirstAcvity --->onResume
FirstAcvity --->onPause
SecondActivity--->onCreate
SecondActivity--->onStart
SecondActivity--->onResume
FirstAcvity --->onStop

现在给AndroidMainfest.xml中的SeconedActivity属性加入
android:theme="@android:style/Theme.Dialog",则SeconedActivity将以对话框形式出现,不会
对FirstAcvity形成遮盖.

这时的状态输出为:

FirstAcvity ---> onCreate
FirstAcvity --->onStart
FirstAcvity --->onResume
FirstAcvity --->onPause
SecondActivity--->onCreate
SecondActivity--->onStart
SecondActivity--->onResume

这时FirstAcvity比完全遮盖时少调用了onStop方法.

以下两种情况下 都只会触发onPause而不会触发onStop

1. 一个透明的包含Dialog的Activity 出现

2. 按poweroff锁屏

显示一个非activity的Dialog,是不会调用onPause和onStop的,因为此Dialog属于activity




查看完整回答
反对 回复 2022-06-14
?
HUH函数

TA贡献1836条经验 获得超4个赞

如果当前activity不在前台(比如来电话),系统自动调用activity的onPause()方法

查看完整回答
反对 回复 2022-06-14
  • 2 回答
  • 0 关注
  • 263 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号