2

从 Fragment 内部启动 Activity 可以使用两种代码完成:

startActivity(Intent);

getActivity().startActivity();

有什么区别 ??

注意:我知道它的区别,startActivityForResult(); 所以请不要发布任何与此方法相关的内容。

谢谢

4

2 回答 2

4

没有什么。 文档对此Fragment非常清楚:

public void startActivity (Intent intent)

startActivity(Intent)从片段的包含 Activity调用。

于 2013-11-03T23:51:31.920 回答
1

最大的不同:

Fragment#startActivity() 检查 mHost == null 是否抛出“Fragment this is not attach to Activity”异常。如果您使用getActivity().startActivity()它将返回一个可为空的值。如果 mHost 为 null,您将得到 NullPointException i。

于 2019-08-14T10:04:31.070 回答