我有一个活动。在这个活动中,我想用startActivityForResult()开始另一个活动。我知道我的基本活动是在一个主GUI线程的进程内开始的。 但据我所知,startActivityForResult()是异步的,这意味着我的新活动将在不同的线程中执行。 我找不到关于里面线程的信息。如果只有一个GUI线程,这些函数如何异步工作?Android中startActivityForResult()的机制是什么?
7
A
回答
5
但据我了解, startActivityForResult()是 asynchronious这意味着我的新 活动将在 不同的线程来执行。
startActivityForResult()
是异步的。这并不意味着您的新活动将在不同的线程中执行。如果新的活动是您自己的应用程序的一部分,它将在主应用程序线程上运行,就像所有其他活动一样。
如果只有一个GUI线程,这些函数是如何异步工作的?
startActivityForResult()
,像startActivity()
,不立即做任何事情。相反,它会将消息放入消息队列中,然后返回。当您将控制权还给Android(例如,您的onClick()
方法结束)时,Android会返回处理该队列中的消息。当它到达你的开始活动消息时,它启动新的活动。
0
通过任何你想要的信息在你的意图中的附加形式。
Intent i = new Intent(getApplicationContext(), YourClass.class);
i.putExtra("EXTRA_INFO", <your info here>);
startActivityForResult(i);
而在你的新的活动
protected void onCreate(Bundle savedInstanceState) {
if(getIntent().hasExtra("EXTRA_INFO"){
mString = getIntent().getStringExtra("EXTRA_INFO");
}
}
相关问题
- 1. TabActivity中的Android startActivityForResult
- 2. StartActivityForResult Android中
- 3. 什么是PKCS11中的“机制”?
- 4. C++中`inserter`的机制是什么?
- 5. QNetworkAccessManager中的并行机制是什么?
- 6. startActivityForResult Android
- 7. Android的startActivityForResult
- 8. 请求代码在startActivityForResult中的含义是什么
- 9. 在Android中,为什么startActivityForResult不支持SingleTask模式?
- 10. 什么是不同的上传机制
- 11. 什么是Socket-IO的心跳机制?
- 12. WebRTC配置的机制是什么?
- 13. 什么是Gambit-C的GC机制?
- 14. 隐形背后的机制是什么?
- 15. maven插件的机制是什么
- 16. 这个函数的机制是什么?
- 17. android - 从ArrayAdapter的startActivityForResult
- 18. 控制机制反转中的Unity容器是什么?
- 19. 什么是Android中
- 20. 什么是startActivityForResult()的模拟,但使用片段
- 21. 什么是名称查找机制?
- 22. qt framebuffer工作机制是什么?
- 23. 什么是Android中的JobService
- 24. Android中的adb是什么?
- 25. Android中的SharedPreferences是什么?
- 26. Android中的包是什么?
- 27. Android中的AsyncCallBack是什么?
- 28. 什么是Android中的getRotation?
- 29. Android中的AwesomePlayer是什么?
- 30. 什么是android中的ExifInterface?