无法为ViewPager容器布局设置侧边距/边距

时间:2013-05-30 14:37:44

标签: android android-viewpager

我正在尝试在我的应用中实施Caldroid日历,只需进行一些修改。那里有自定义ViewPager:

    <com.antonyt.infiniteviewpager.InfiniteViewPager
            android:id="@+id/months_infinite_pager"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="-10dp"/>

寻呼机位于一个父布局下。我想要的是使用边距或填充将寻呼机定位在其父级内部。设置侧(左,右)边距或填充似乎使应用程序循环到ViewPager onMeasure()方法中的某个位置。

无法找到任何信息,ViewPager不能拥有侧边距/填充设置的父级。 onMeasure()现在只包含super.onMeasure(widthMeasureSpec,heightMeasureSpec),并且由于某种原因,它似乎在本机库中循环。没有边距/填充<= p>就不会发生这种情况

1 个答案:

答案 0 :(得分:0)

容器布局存在问题:

    <LinearLayout
        android:id="@+id/right_page"
        android:layout_width="1dp"
        android:layout_height="match_parent"
        android:layout_weight="0.5"
        android:orientation="vertical" >

只需要占用屏幕一半的布局,那又怎样?问题似乎是android:layout_width="1dp"。更改为android:layout_width="200dp"有帮助。如果它是200,100或任何其他数字并不重要。我认为ViewPager首先将自己定位在1dp上,然后从百分比宽度重新计算,但只是猜测