如何拥有具有恒定提示和图标以及可编辑提示的编辑文本?

Posted

技术标签:

【中文标题】如何拥有具有恒定提示和图标以及可编辑提示的编辑文本?【英文标题】:How to have an edittext with constant hint and icon and editable hint? 【发布时间】:2021-03-03 19:43:40 【问题描述】:

我想要一个带有下面图片的编辑文本:

我怎样才能拥有这样的编辑文本?一个恒定的图标和提示,带有可编辑区域,如图片中的“James25”。我只想编辑姓名和邮件部分。

我正在为 android 应用编写一个 XML 文件。

【问题讨论】:

【参考方案1】:

你可以尝试使用一个 textView 和 edittext 像这样的重力结束

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_
android:layout_
android:orientation="vertical">

<RelativeLayout
    android:layout_
    android:layout_>

    <TextView
        android:id="@+id/tvUserName"
        android:layout_
        android:layout_
        android:drawableStart="@drawable/ic_cross_prime"
        android:gravity="center_vertical"
        android:text="UserName"
        android:textColor="@color/white"
        android:textSize="@dimen/sp_18"
        android:textStyle="bold"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <EditText
        android:layout_
        android:layout_
        android:layout_centerVertical="true"
        android:layout_toEndOf="@+id/tvUserName"
        android:background="@android:color/transparent"
        android:gravity="end"
        android:text="User Name"
        android:textSize="@dimen/sp_18" />

</RelativeLayout>

<RelativeLayout
    android:layout_
    android:layout_>

    <TextView
        android:id="@+id/tvEmail"
        android:layout_
        android:layout_
        android:drawableStart="@drawable/ic_cross_prime"
        android:gravity="center_vertical"
        android:text="UserName"
        android:textColor="@color/white"
        android:textSize="@dimen/sp_18"
        android:textStyle="bold"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <EditText
        android:layout_
        android:layout_
        android:layout_centerVertical="true"
        android:layout_toEndOf="@+id/tvEmail"
        android:background="@android:color/transparent"
        android:gravity="end"
        android:text="User Name"
        android:textSize="@dimen/sp_18" />

</RelativeLayout>

 </LinearLayout>

【讨论】:

这没关系,但我不想使用嵌套布局。还有其他解决方案吗? 一个编辑文本是不可能的

以上是关于如何拥有具有恒定提示和图标以及可编辑提示的编辑文本?的主要内容,如果未能解决你的问题,请参考以下文章

带有提示的编辑文本中的 Android 可访问性

如何在 Rails 应用程序中编辑 .vtt 轨道的提示文本

UITableViewCell 中的可编辑文本字段

JavaScript高级(01)

contenteditable元素的placeholder输入提示语设置

编辑文本框中提示的自定义位置。