<RelativeLayout
android:id="@+id/OtherWeatherInfo_main"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/margin_space"
android:layout_marginLeft="@dimen/margin_space"
android:layout_marginRight="@dimen/margin_space" >
<RelativeLayout
android:id="@+id/OtherWeatherInfo"
android:layout_width="@dimen/weather_space"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="center_vertical"
android:layout_alignParentLeft="true"
android:background="@drawable/rect_block" >
<LinearLayout
android:id="@+id/humidityLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/humidityTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="@string/str_humidity"
android:textSize="@dimen/weather_size"
android:textStyle="bold" >
</TextView>
<TextView
android:id="@+id/humidityValue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="@string/str_no_data"
android:textColor="@color/color_white"
android:textStyle="bold" >
</TextView>
</LinearLayout>
</RelativeLayout>
<RelativeLayout
android:id="@+id/OtherWeatherInfo2"
android:layout_width="@dimen/weather_space"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:gravity="center_vertical"
android:layout_toRightOf="@+id/OtherWeatherInfo"
android:background="@drawable/rect_block" >
<LinearLayout
android:id="@+id/visiLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/visiTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="@string/str_visi"
android:textSize="@dimen/weather_size"
android:textStyle="bold" />
<TextView
android:id="@+id/visiValue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="@string/str_no_data"
android:textColor="@color/color_white"
android:textStyle="bold" />
</LinearLayout>
</RelativeLayout>
</RelativeLayout>
上面的代码由我编写,以实现下图:。但我所取得的是这个:或这个:
我完全不知道我在这里做的错误是什么?我只是使用主要的相对布局 OtherWeatherInfo_main ,其中我嵌入了两个相对布局来表示两个天气属性。 @ dimen / weather_space 是145 dp。我无法在主布局中平等对齐两个相对布局。任何帮助都将不胜感激。
答案 0 :(得分:1)
将两个RelativeLayouts以水平方向包裹在LinearLayout中,然后同时指定RelativeLayouts的相等权重。
一般来说,这样的事情:
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="1" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:weight="0.5" />
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:weight="0.5" />
</LinearLayout>
答案 1 :(得分:0)
删除此
android:layout_alignParentRight="true"
或者
android:layout_toRightOf="@+id/OtherWeatherInfo"
来自你的第二个布局。
此外,您可以将RelativeLayouts包装到水平LinearLayout并使用android:layout_weight属性
答案 2 :(得分:0)
如果您想使用LinearLayout实现您的设计,请尝试这种方式。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center">
<TextView
android:id="@+id/txtCityName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Kolkata"/>
<ImageView
android:id="@+id/imgWeather"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher"
android:layout_marginTop="20dp"/>
<TextView
android:id="@+id/txtTemprature"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="28 C"
android:layout_margin="10dp"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="20dp">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Humidity"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="29"/>
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:layout_marginLeft="20dp"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Humidity"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="29"/>
</LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/txtDateTime"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Fri 28"
android:layout_margin="10dp"/>
</LinearLayout>