Android当ViewPager插入为Child时出错android.view.ViewGroup.jumpDrawablesToCurrentState(ViewGroup.java:5035)

我有小孩(不作为根)的元素的布局RelativeLayout,然后我创buildViewPager并将其作为我的相对布局的子项插入,所以它就像

+相对布局(root)

|

+ – 相对布局(子)

|

+ – – ViewPager

现在暂时 – 一切都好。

但是,然后我尝试添加一些查看项目ViewPager与自己的布局,然后我得到错误

10-12 15:32:46.777: E/AndroidRuntime(6031): FATAL EXCEPTION: main 10-12 15:32:46.777: E/AndroidRuntime(6031): java.lang.StackOverflowError 10-12 15:32:46.777: E/AndroidRuntime(6031): at android.view.ViewGroup.jumpDrawablesToCurrentState(ViewGroup.java:5035) 

那ViewPager怎么会把我作为RelativeLayout的Child来拥有自己的Child View呢?

问题解决了!

这是因为我打电话LayoutInflater.inflate([subViewOfViewPager],[ParentOfViewPager])

需要

更改为LayoutInflater.inflate([subViewOfViewPager],null)

更多词语:

这是因为当调用膨胀与第二个参数,视图插入作为给定ViewGroup子,然后我尝试添加此视图到ViewPager。 View只能有一个Parent ViewGroup元素。

答案的简化版本

 @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.cab_listing, container,false); return view; }