【问题标题】:How to divide text in EditBox as TextView and EditBox in Android Layout如何在Android Layout中将EditBox中的文本划分为TextView和EditBox
【发布时间】:2020-04-09 22:28:08
【问题描述】:

我希望我的 EditText 看起来像这样 - 我能够实现 EditText 但我无法将 TextView 放在一边。

这是我的代码 -

<LinearLayout
        android:id="@+id/input_group"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_marginLeft="25dp"
        android:layout_marginRight="25dp"
        android:layout_marginBottom="50dp"
        android:layout_alignParentBottom="true"
        android:gravity="center">

    <EditText
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:padding="5dp"
            android:textColor="@android:color/white"
            android:hint="Username"
            android:background="@drawable/rounded_edit_text" />

    <EditText
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:padding="5dp"
            android:textColor="@android:color/white"
            android:hint="Password"
            android:background="@drawable/rounded_edit_text" />
</LinearLayout>

【问题讨论】:

  • 你到底想完成什么?

标签: android android-layout layout textview android-edittext


【解决方案1】:

试试这个

<LinearLayout
        android:layout_width="250dp"
        android:layout_height="40dp"
        android:background="@drawable/linear_bg"
        android:orientation="horizontal">

    <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight=".4"
            android:gravity="center"
            android:padding="5dp"
            android:text="UserName"
            android:textColor="@android:color/white" />

    <EditText
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight=".6"
            android:background="@android:color/transparent"
            android:gravity="center"
            android:hint="******"
            android:padding="5dp"
            android:textColor="@android:color/white"
            android:textColorHint="@android:color/white" />

</LinearLayout>

drawable/linear_bg

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
    <solid android:color="#3F51B5" />
    <corners android:radius="20dp" />
</shape>

输出

OUTPUT in device

【讨论】:

  • 再次感谢,但在接受此之前,您能告诉我 - 通过为每个字段添加这么多可绘制对象,这会影响性能吗?
  • 而不是保持 TextView 和 EditBox 50-50,我希望它们 40-60,在 xml 中使用哪个属性来做到这一点?
  • @nkirit 你可以根据你的要求使用android:layout_weight=".6"
【解决方案2】:

您应该在水平 LinearLayout 中有 TextView 和 EditText。背景应该应用于 LinearLayout 而不是 EditText

  <LinearLayout
        android:id="@+id/input_group"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_margin="@dimen/form_margin"
        android:padding="8dp"
        android:background="@drawable/background"
        android:layout_alignParentBottom="true"
        android:gravity="center">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="5dp"
            android:textSize="20sp"
            android:textColor="@android:color/white"
            android:text="username"
             />

        <EditText
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:padding="5dp"
            android:layout_marginLeft="16dp"
            android:textColor="@android:color/white"
            android:textSize="20sp"
            android:text="Olivia Gu" />
    </LinearLayout>

背景-

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
    <solid android:color="@color/colorPrimary" />
    <stroke android:width="1dip"
        android:color="@color/colorAccent" />
    <corners android:radius="8dp" />
</shape>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-09
    • 1970-01-01
    • 2012-05-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多