0

I am having a heck of time trying to get my UI to look the way I want. Here's what I've got ... Here's what I got ...

I would like the TextView, the XX:XX:XX, text font to be larger and centered between the EditText and Button. Also how come the user gets the phone keyboard instead of a qwerty keyboard to use to enter text?

Here's my layout XML:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:orientation="vertical" >

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >

    <EditText
        android:id="@+id/new_bookmark_name"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_weight="0.5"
        android:ems="10"
        android:inputType="text" />

    <TextView
        android:id="@+id/new_bookmark_clock"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_weight="0.3"
        android:text="@string/xx_xx_xx" />

    <Button
        android:id="@+id/btn_add_new_bookmark"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_weight="0.2"
        android:text="@string/add"/>
 </LinearLayout>

 <ListView
    android:id="@+id/bookmark_list"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"/>

 </LinearLayout>
4

5 回答 5

4

使用下面的代码来实现你想要的:......

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:orientation="vertical" >

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >

    <EditText
        android:id="@+id/new_bookmark_name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_weight="1"
        android:ems="10"
        android:inputType="text" />

    <TextView
        android:id="@+id/new_bookmark_clock"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:textSize="18dp"
        android:layout_weight="1"
        android:text="@string/xx_xx_xx" />

    <Button
        android:id="@+id/btn_add_new_bookmark"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_weight="1"
        android:text="@string/add"/>
 </LinearLayout>

 <ListView
    android:id="@+id/bookmark_list"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"/>

 </LinearLayout>
于 2013-09-18T03:57:42.553 回答
1

您可以使用相对布局来做到这一点。您可以使用更改字体大小android:textSize

<RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <EditText
        android:id="@+id/new_bookmark_name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:ems="10"
        android:inputType="text" />

    <TextView
        android:id="@+id/new_bookmark_clock"
        android:layout_width="wrap_content"
        android:layout_toRightOf="@id/new_bookmark_name"
        android:layout_toLeftOf="@+id/btn_add_new_bookmark"
        android:layout_height="wrap_content"
        android:textSize="20sp"
        android:text="@string/xx_xx_xx" />

    <Button
        android:id="@id/btn_add_new_bookmark"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:text="@string/add"/>
 </RelativeLayout>
于 2013-09-18T03:24:13.200 回答
1

请按照下面的操作,我制作了一个示例 UI,完全符合您使用相对布局和使用最少行数的要求。请查看并检查是否可以解决目的。我还附上了相同的快照。

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

            <RelativeLayout
                android:padding="4dp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                >

                <EditText
                    android:id="@+id/ed_name"
                    android:layout_width="100dp"
                    android:layout_height="wrap_content"
                    android:inputType="number" />

                <TextView
                    android:id="@+id/tv_name"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_centerVertical="true"
                    android:layout_toRightOf="@+id/ed_name"
                    android:text="XX:XX:XX"
                    android:textSize="18dp" />

                <Button
                    android:id="@+id/btn_name"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentRight="true"
                    android:text=" add " />
            </RelativeLayout>
            </RelativeLayout>

关于键盘:在实际设备上查看,设备会打开自己的默认键盘。在此处输入图像描述

于 2013-09-18T05:27:30.693 回答
1

替换android:layout_gravity="center"

android:gravity="center" 在你的 TextView 中。

关于键盘布局,看起来您正在模拟器中尝试。模拟器以纵向模式显示 12pad 键盘。您可以在设备中尝试。

于 2013-09-18T03:30:53.890 回答
1

请参考此xml所有更改已完成tested is also done.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:orientation="vertical" >

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >

    <EditText
        android:id="@+id/new_bookmark_name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_weight="1"
        android:ems="10"
        android:inputType="number" />

    <TextView
        android:id="@+id/new_bookmark_clock"
        android:layout_width="match_parent"
        android:layout_height="fill_parent"
        android:gravity="center_horizontal|center_vertical"
        android:textSize="18dp"
        android:layout_weight="1"
        android:text="hello" />

    <Button
        android:id="@+id/btn_add_new_bookmark"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_weight="1"
        android:text="add"/>
 </LinearLayout>

 <ListView
    android:id="@+id/bookmark_list"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"/>

 </LinearLayout>
于 2013-09-18T04:26:27.263 回答