在textview中提升文本

时间:2014-05-02 01:57:23

标签: android xml

这是一个简单的问题,但它在xml土地上踢我的屁股。

我想要做的就是让两个编辑文本字段用冒号分隔,并使冒号居中,如下所示: 00:30

现在显示冒号时略低于编辑文本字段的00和30

我尝试过使用android:layout_marginBottom= "10dp",但这并不奏效。有任何想法吗?感谢

这是我的代码:

    <EditText
        android:id="@+id/edit_minute"
        android:layout_width="wrap_content"
        android:layout_height="85dp"
        android:layout_below="@+id/text_minute"
        android:layout_marginLeft="45sp"
        android:inputType="number"
        android:text="@string/edit_minute"
        android:textColor="#0D4F8B"
        android:textSize="70sp"
        android:textStyle="bold" />

     <TextView
          android:id="@+id/text_colon"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_toRightOf="@+id/edit_minute"
          android:layout_below="@+id/text_minute"
          android:textAlignment="center"
          android:text="@string/text_colon"
          android:textSize="70sp"
          android:textStyle="bold" />

    <EditText
        android:id="@+id/edit_second"
        android:layout_width="105dp"
        android:layout_height="85dp"
        android:layout_below="@+id/text_minute"
        android:layout_toRightOf="@+id/text_colon"
        android:inputType="number"
        android:text="@string/edit_second"
        android:textColor="#0D4F8B"
        android:textSize="70sp"
        android:textStyle="bold" />

3 个答案:

答案 0 :(得分:0)

我首先将它们全部放在RelativeLayout中,并将此布局放在“text_minute”下。

然后在下面我将所有内容集中在一起,并使用强制layout_alignTop跟随第一个layout_alignBottom高度的属性TextViewEditText来调整冒号的高度:

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/text_minute" >

<EditText
    android:id="@+id/edit_minute"
    android:layout_width="wrap_content"
    android:layout_height="85dp"
    android:layout_toLeftOf="@+id/text_colon"
    android:inputType="number"
    android:text="@string/edit_minute"
    android:textColor="#0D4F8B"
    android:textSize="70sp"
    android:textStyle="bold" />

 <TextView
      android:id="@+id/text_colon"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:textAlignment="center"
      android:layout_alignTop="@+id/edit_minute"
      android:layout_alignBottom="@+id/edit_minute"
      android:gravity="center_horizontal"
      android:text="@string/text_colon"
      android:textSize="70sp"
      android:textStyle="bold" />

<EditText
    android:id="@+id/edit_second"
    android:layout_width="wrap_content"
    android:layout_height="85dp"
    android:layout_toRightOf="@+id/text_colon"
    android:inputType="number"
    android:text="@string/edit_second"
    android:textColor="#0D4F8B"
    android:textSize="70sp"
    android:textStyle="bold" />

</RelativeLayout>

答案 1 :(得分:0)

您可以将EditText TextView和EditText全部放在LinearLayout中,并使用android:baselineAligned和android:baselineAlignedChildIndex。

如果您需要父视图是RelativeLayout,那么您可以在每个子视图上使用android:layout_alignBaseline。

答案 2 :(得分:0)

将两个edittext的Layout_height放到wrapcontent而不给出特定的高度,然后将三个视图对齐.....

<EditText
        android:id="@+id/edit_minute"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/text_minute"
        android:layout_marginLeft="45sp"
        android:inputType="number"
        android:text="08"
        android:textColor="#0D4F8B"
        android:textSize="70sp"
        android:textStyle="bold" />

     <TextView
          android:id="@+id/text_colon"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_toRightOf="@+id/edit_minute"
          android:layout_below="@+id/text_minute"
          android:textAlignment="center"
          android:text=":"
          android:textSize="70sp"
          android:textStyle="bold" />

    <EditText
        android:id="@+id/edit_second"
        android:layout_width="105dp"
        android:layout_height="wrap_content"
        android:layout_below="@+id/text_minute"
        android:layout_toRightOf="@+id/text_colon"
        android:inputType="number"
        android:text="30"
        android:textColor="#0D4F8B"
        android:textSize="70sp"
        android:textStyle="bold" />