您的位置:首页 > 移动开发 > Android开发

android Java.lang.IllegalStateException: No activity 解决方法

2017-03-03 16:22 1896 查看
错误如日志如下

/**

* Java.lang.IllegalStateException: No
* activity at
* Android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1075)
* at
* android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1070)
* at
* android.support.v4.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:1861)
* at
* android.support.v4.app.Fragment.performActivityCreated(Fragment.java:1474)
* at
* android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:931)
* at
* android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1088)
*/

解决方法是:在所在每个Fragment里重写如下方法解决

@Override
public void onDetach() {
super.onDetach();
try {
Field childFragmentManager = Fragment.class.getDeclaredField("mChildFragmentManager");
childFragmentManager.setAccessible(true);
childFragmentManager.set(this, null);

} catch (NoSuchFieldException e) {
throw new RuntimeException(e);
} catch (IllegalAccessException e) {
throw new RuntimeException(e);
}

}

详细请参考来自
http://blog.csdn.net/leewenjin/article/details/19410949
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐