最近学习安卓,点击按钮弹出一个悬浮窗,悬浮窗设置点击事件,可以用来截取手机当前桌面的图片。
关于activity生命周期不是很清晰
当在A界面,出发弹出框B,在B点击截图功能时,如何能够返回执行onActivityResult?
我的点击截图功能 运行到 startActivityForResult 就没有响应了。
希望好人不吝赐教。
andriod实现截取当前手机屏幕
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- MarkHan_ 2023-02-27 16:31关注
该回答引用GPTᴼᴾᴱᴺᴬᴵ
在Android中,当你在Activity A中调用了startActivityForResult()方法启动Activity B时,如果你希望在Activity B执行完后返回数据给Activity A,则需要在Activity B中使用setResult()方法设置返回结果,并在Activity B的finish()方法中调用该方法。在你的情况下,当你在B界面点击截图功能时,应该调用setResult()方法并设置返回结果,在调用finish()方法关闭B界面。这样,在B界面关闭后,Activity A的onActivityResult()方法就会被调用,并且你可以在该方法中处理B界面返回的数据。
如果你在B界面中调用startActivityForResult()方法启动了另一个Activity C,则需要在C界面中使用setResult()方法设置返回结果,并在C界面的finish()方法中调用该方法,以便返回数据给B界面。当B界面关闭后,Activity A的onActivityResult()方法就会被调用,你可以在该方法中处理B界面返回的数据。
另外,需要注意的是,在Android中,当一个Activity处于前台时,其他Activity的生命周期会受到影响。因此,在你的情况下,当B界面弹出悬浮窗并截图时,B界面可能会失去焦点,导致Activity A的onActivityResult()方法无法被调用。为了避免这种情况,建议你在B界面中的截图功能中使用异步线程来处理悬浮窗的操作,以避免阻塞主线程。
解决 无用评论 打赏 举报
悬赏问题
- ¥15 WPF动态创建页面内容
- ¥15 如何对TBSS的结果进行统计学的分析已完成置换检验,如何在最终的TBSS输出结果提取除具体值及如何做进一步相关性分析
- ¥15 SQL数据库操作问题
- ¥100 关于lm339比较电路出现的问题
- ¥15 Matlab安装yalmip和cplex功能安装失败
- ¥15 加装宝马安卓中控改变开机画面
- ¥15 STK安装问题问问大家,这种情况应该怎么办
- ¥15 关于罗技鼠标宏lua文件的问题
- ¥15 halcon ocr mlp 识别问题
- ¥15 已知曲线满足正余弦函数,根据其峰值,还原出整条曲线