使用fragment加载自定义fragment出现error inflating class fragment错误解决办法

出现这个错误网上大部分方法是

  1. 检查fragment包名,support.v4和正常的是不一样的

  2. 检查activity,如果使用的是v4包下的fragment,则官方给出的是必须继承FragmentActivity(v4包),也可以使用CompatActivity(v7包,继承自FragmentActivity)

  3. 静态加载fragment必须给出id

可能还有其他的一些错误逻辑导致相关错误,比如fragment的oncreateview是否加载了正确的layout,解析是否正确,返回是否正确等。。。

如果上面的操作还不能解决该错误,那就只有一种方法,动态加载,好像v4包的fragment不支持静态加载,具体原因没找到,尝试动态加载确实可以正常使用

v4包动态加载:getSupportFragmentManager().beginTransaction().replace(layoutId, fragment, tag).commit();

非v4包动态静态都可以正常加载。

猜你喜欢

转载自blog.csdn.net/chenmmo/article/details/80568717