Reputation: 2195
I'm attempting to create my first Android app and I'd like to center horizontally align two elements on the same row so that they appear on top of each other.
I've tried setting the layout_row to the same value and gravity to center however that shows the ChartView and not the (serviceScore) TextView. If I remove the ChartView, the (serviceScore) TextView displays as expected however I want to display them both. What am I missing? Also, any ideas why the chart cuts off at the bottom?
Code:
<?xml version="1.0" encoding="utf-8"?>
<android.support.wear.widget.BoxInsetLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="@dimen/box_inset_layout_padding"
tools:deviceIds="wear">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="@dimen/inner_frame_layout_padding"
app:boxedEdges="all"
android:layout_gravity="center_horizontal"
android:minWidth="25px"
android:minHeight="25px">
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:rowCount="8"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="center"
android:columnCount="1"
android:orientation="horizontal">
<TextView
android:id="@+id/text"
android:visibility="visible"
android:textSize="9dp"
android:gravity="center"
android:layout_row="1"/>
<microcharts.droid.ChartView
android:id="@+id/chartView"
android:visibility="visible"
android:layout_row="2"
android:gravity="center" />
<TextView
android:layout_row="2"
android:text="test"
android:id="@+id/serviceScore"
android:visibility="visible"
android:gravity="center"
android:textSize="50dp"/>
</GridLayout>
</FrameLayout>
</android.support.wear.widget.BoxInsetLayout>
UI:
Upvotes: 0
Views: 233
Reputation: 130
use android:layout_gravity="center_horizontal" as,
<?xml version="1.0" encoding="utf-8"?>
<android.support.wear.widget.BoxInsetLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="@dimen/box_inset_layout_padding"
tools:deviceIds="wear">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="@dimen/inner_frame_layout_padding"
android:boxedEdges="all"
android:layout_gravity="center_horizontal"
android:minWidth="25px"
android:minHeight="25px">
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:rowCount="8"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="center_horizontal"
android:columnCount="1"
android:orientation="horizontal">
<TextView
android:id="@+id/text"
android:visibility="visible"
android:textSize="9dp"
android:gravity="center"
android:layout_row="1"/>
<microcharts.droid.ChartView
android:id="@+id/chartView"
android:visibility="visible"
android:layout_row="2"
android:gravity="center" />
<TextView
android:layout_row="2"
android:text="test"
android:id="@+id/serviceScore"
android:visibility="visible"
android:gravity="center"
android:layout_gravity="center_horizontal"
android:textSize="50dp"/>
</GridLayout>
</FrameLayout>
</android.support.wear.widget.BoxInsetLayout>
Upvotes: 1