我有子(不作为root)元素RelativeLayout的布局,然后我创建ViewPager并将其作为我的相对布局的子项插入,所以它就像
+相对布局(根)
|
+ - 相对布局(孩子)
|
+ - - 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 Views?
答案 0 :(得分:123)
问题解决了!
这是因为我打电话给LayoutInflater.inflate([subViewOfViewPager], [ParentOfViewPager])
它应该是:
LayoutInflater.inflate([subViewOfViewPager], [ParentOfViewPager], false))
更多字词:
发生这种情况是因为当使用第二个参数调用inflate时,视图作为给定ViewGroup的子类进行插入,然后我尝试将此视图添加到ViewPager。视图只能有一个Parent ViewGroup元素。第三个参数将attachToRoot
设置为false以避免这种情况。
答案 1 :(得分:1)
简化版answer
abc