我正在开发一个 Android 应用程序,我有一个 ListActivity
。
有时,我需要使用 startActivityForResult
打开它,有时需要使用 startActivity
。
我想我可以做到,但我不确定。我有两个问题:
- 我可以为 Result 和 normally 启动相同的 Activity 吗?
- 我怎么知道
ListActivity
是用startActivity
或startActivityForResult
启动的?
最佳答案
Can I start the same activity forResult and normally?
是的,你可以。
How con I know on ListActivity that it was started with startActivity or startActivityForResult?
参见 getCallingActivity了解更多详情。
因此您可以在完成调用 Activity 之前 checkin Activity 。如果结果为空,则 Activity 由 startActivity()
调用,如果结果不为 null,则 Activity 由 startActivityForResult()
调用。就是这样。
例子:-
if (getCallingActivity() == null) {
//This Activity was called by startActivity
} else {
//This Activity was called by startActivityForResult
}
关于android - startActivity 和 startActivityForResult 具有相同的 Activity?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17470174/