PagerTitleStrip与实际内容相重叠 [英] PagerTitleStrip overlaps with actual content
问题描述
我使用了PagerTitleStrip自定义viewpager,都是由Android的兼容包的支持。由于推荐我用这样的:
I am using A custom viewpager with a PagerTitleStrip, both supported by the android compatibility package. As recommended I use it like this:
<snok.stubefrie.DayPager
android:id="@+id/viewpager"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1" >
<android.support.v4.view.PagerTitleStrip
android:id="@+id/strip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="top"/>
</snok.stubefrie.DayPager>
然而,titlestrip我viewpager的实际内容重叠(两者开始0,0)。任何想法?
However the titlestrip overlaps with the actual content of my viewpager (Both starting at 0,0). Any ideas?
推荐答案
你如何添加视图ViewPager?
How do you add views to ViewPager?
当我遇到了同样的问题,原因是添加与错位置的观点在我PagerAdapter执行。
When I met the same problem, the cause was to add views with wrong position in my PagerAdapter implementation.
坏code是这样的。
viewPager.setAdapter(new PagerAdapter() {
@Override
public Object instantiateItem(ViewGroup pager, int position) {
View view = createView(position);
((ViewPager) pager).addView(view, position);
return view;
}
@Override
public void destroyItem (ViewGroup pager, int position, Object view) {
((ViewPager) pager).removeViewAt(position);
}
...
});
这code一直在努力,但是,当我开始用PagerTitleStrip,该PagerTitleStrip观点成为ViewPager的第一个孩子,因此, addView(查看,0)
打破了ViewPager的内部结构。
This code had been working, however, when I began to use PagerTitleStrip, the PagerTitleStrip view became the first child of the ViewPager, hence addView(view, 0)
broke the internal structure of the ViewPager.
这是固定的更换和 removeView
如下图所示。
It was fixed by replacing addView
and removeView
as below.
- addView(视图位置) - > addView(视图)
- removeViewAt(位置) - > removeView((视图)视图)
希望它帮助!
这篇关于PagerTitleStrip与实际内容相重叠的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!