常规 fragment 具有此方法签名,但 v4 没有。我想我可以做getActivity().startActivity(Intent, Bundle)
,但我觉得这样改变一定是有原因的?
最佳答案
我在没有答案的情况下受到了反对票的驱使,所以我会发布我为其他人所做的事情。不确定它是否理想,但它确实有效。
我有一个扩展 v4.Fragment 的基类,我重新添加了缺少的方法。
abstract public class MyFragment extends Fragment {
public void startActivity(Intent intent, Bundle bundle) {
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
getActivity().startActivity(intent, bundle);
}
}
public void startActivityForResult(Intent intent, int requestCode, Bundle bundle) {
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
getActivity().startActivityForResult(intent, requestCode, bundle);
}
}
}
关于android - 为什么 v4 fragment 没有 startActivity(Intent, Bundle)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33175317/