Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Positioning inside frame layout

Tags:

android

layout

I am trying to add view page indicator circles to a screen and I have the code working in that as I slide the image will change to indicate which page I am on.

I cant seem to position the layout where I want it though, it does say in the docs that a frame layout should only contain one child but I have seen many examples of where this doesnt seem to be the case.

Is it not possible to position a relative layout inside a frame layout?

I would like the strip of dots to appear on the view pager but at the bottom, like the ios content view with dots.

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/dark_blue">
<android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_marginTop="3dp"
    android:layout_marginLeft="3dp"
    android:layout_marginBottom="3dp"
    android:layout_marginRight="3dp"
    android:id="@+id/home_addr_pager"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_weight="1">

</android.support.v4.view.ViewPager>
<RelativeLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true">
    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/dots"
        />
</RelativeLayout>
</FrameLayout>
like image 638
berimbolo Avatar asked Oct 13 '15 14:10

berimbolo


1 Answers

You are using the wrong syntax, for a FrameLayout you should use layout_gravity="bottom|center_horizontal" instead of android:layout_alignParentBottom="true"

try this;

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/home_addr_pager"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_marginBottom="3dp"
    android:layout_marginLeft="3dp"
    android:layout_marginRight="3dp"
    android:layout_marginTop="3dp"
    android:layout_weight="1">

</android.support.v4.view.ViewPager>

<RelativeLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom|center_horizontal">

    <LinearLayout
        android:id="@+id/dots"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="bottom|center_horizontal"
        android:orientation="horizontal"/>
</RelativeLayout>

like image 101
vguzzi Avatar answered Oct 15 '22 05:10

vguzzi