Android ViewPager和ViewPagerIndicator位于RelativeLayout内部,使RelativeLayout在整个屏幕上展开
这就是给我带来很多问题的原因:Android ViewPager和ViewPagerIndicator位于RelativeLayout内部,使RelativeLayout在整个屏幕上展开,android,android-layout,android-viewpager,android-xml,viewpagerindicator,Android,Android Layout,Android Viewpager,Android Xml,Viewpagerindicator,这就是给我带来很多问题的原因: <RelativeLayout android:id="@+id/galleryLayout" android:layout_width="match_parent" android:layout_height="180dp" android:background="@color/white"> <android.support.v4.view.ViewPager andr
<RelativeLayout
android:id="@+id/galleryLayout"
android:layout_width="match_parent"
android:layout_height="180dp"
android:background="@color/white">
<android.support.v4.view.ViewPager
android:id="@+id/imageViewPager"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true" />
<com.viewpagerindicator.CirclePageIndicator
android:id="@+id/circlePageIndicator"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:padding="@dimen/padding_middle"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"/>
</RelativeLayout>
. 不过,如果有更好的解决方案,我还是会很感激的
问题2
我希望CirclePageIndicator位于其父对象(RelativeLayout)的底部,因此我添加了属性layout\u alignParentBottom=“true”,但由于这个原因,RelativeLayout将在整个屏幕上展开
所以我想要的是一个相对论,它围绕着ViewPager,它围绕着它的孩子。孩子是从网上下载的,所以我不能预先设置。在这个相对图的底部,我想要一个ViewPagerIndicator。至于问题1您正确地解决了这个问题,ViewPager
默认情况下不会包装其子项
至于第二个问题,这是一种正常的相对行为。如果您将其height
设置为wrap\u content
,并添加两个子项,一个子项为layout\u alignParentTop=“true”
,第二个子项为layout\u alignParentBottom=“true”
,它们将按高度拉伸您的布局
你应该做的是:问问自己是否真的需要RelativeLayout
。如果你已经提供了你的整个布局,我认为没有必要使用RelativeLayout
(代价高昂)。垂直LinearLayout
就可以了。如果您决定确实需要RelativeLayout
,请尝试将指示器的
规则从layout\u alignParentBottom=“true”
更改为android:layout\u below=“@+id/imageViewPager”
至于问题1您正确解决了问题,默认情况下,ViewPager
不会包装其子项
至于第二个问题,这是一种正常的相对行为。如果您将其height
设置为wrap\u content
,并添加两个子项,一个子项为layout\u alignParentTop=“true”
,第二个子项为layout\u alignParentBottom=“true”
,它们将按高度拉伸您的布局
你应该做的是:问问自己是否真的需要RelativeLayout
。如果你已经提供了你的整个布局,我认为没有必要使用RelativeLayout
(代价高昂)。垂直LinearLayout
就可以了。如果您决定确实需要RelativeLayout
,请尝试将指示器的规则从layout\u alignParentBottom=“true”
更改为android:layout\u below=“@+id/imageViewPager”
,谢谢您的回答。问题是我希望指示器“在”ViewPager内,而不是在其下方。因此,除了使用RelativeLayout,我看没有其他方法了。您可以始终使用框架布局
(指示器
)和布局_gravity=“bottom”
)嗯,这是一个有趣的想法。我还没想到。我现在不能试试这个,但我一到家就去。如果有效的话,我会回敬你并接受你的回答。谢谢谢谢你的回答。问题是我希望指示器“在”ViewPager内,而不是在其下方。因此,除了使用RelativeLayout,我看没有其他方法了。您可以始终使用框架布局
(指示器
)和布局_gravity=“bottom”
)嗯,这是一个有趣的想法。我还没想到。我现在不能试试这个,但我一到家就去。如果有效的话,我会回敬你并接受你的回答。谢谢