在相对布局下在另一个textView下定位textView的问题
问题描述:
我想在包含文本的textview下面用数字定位我的textview。 我用这个布局和textviews重叠:在相对布局下在另一个textView下定位textView的问题
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@drawable/back"
xmlns:android="http://schemas.android.com/apk/res/android">
<!-- we include header -->
<include
layout="@layout/header"/>
<Spinner
android:id="@+id/spinner"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="15dip"
android:layout_marginLeft="5dip"
android:layout_marginRight="5dip"
android:textColor="#ffffff"
android:background="@drawable/spin" />
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#000000">
<TextView
android:id="@+id/tv1"
android:text="Some text to display:"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_marginTop="10dip"
android:textColor="#ffffff" />
<TextView
android:id="@+id/number"
android:text="123 456 789"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:textSize="30dip"
android:layout_marginTop="10dip"
android:textColor="#ffffcc"/>
</RelativeLayout>
</LinearLayout>
我所得到的这个是:
答
你需要android:layout_below="@id/tv1"
你用于数字的TextView
答
在你的第二个TextView
添加
android:layout_below="@id/tv1"
答
您正在使用相对布局,但您并未告诉第二个TextView要定位的相对位置。添加到您的第二个TextView的:
android:layout_below:"@id/tv1"
答
,除非是作为RelativeLayouts并不意味着在顶对方设计的堆叠元素,下面的代码创建下另一个TextView的一个TextView您应该使用的LinearLayout;
<LinearLayout
android:id="@id/deal_time_details"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/deal_item_bg_red_gradient"
android:baselineAligned="false"
android:gravity="center_horizontal"
android:orientation="vertical"
android:paddingBottom="6.0dip"
android:paddingLeft="10.0dip"
android:paddingRight="12.0dip"
android:paddingTop="6.0dip" >
<TextView
android:id="@id/name"
style="@style/deal_item_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:text="@string/deal_details_time_ends" />
<TextView
android:id="@id/company"
style="@style/deal_item_number"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="-1.0dip"
android:gravity="center_horizontal"
android:gravity="center_vertical"
android:text="@string/deal_details_time_redem"
android:textSize="12.0dip" />
</LinearLayout>
答
地址:
android:layout_below="@id/tv1"
为了要下方的位置来看的XML。
嘿,只是让你知道“@ + id”的符号将一个新的ID字符串添加到R.java文件中。如果TextView已经有一个id,你应该省略“+”字符。 – 2012-04-19 11:22:44
确实。我现在将执行13个月的编辑! – Blumer 2012-04-19 22:54:23
13个月了,你的代码还在,正在被像我这样的人阅读! :) – 2012-04-20 08:25:06