【问题标题】:Hint or Text value is not getting removed from edittext when user is typing in edittext当用户输入编辑文本时,提示或文本值不会从编辑文本中删除
【发布时间】:2019-12-10 11:05:55
【问题描述】:

我的布局中有一个编辑文本,我尝试在我的编辑文本中放置提示或文本。

当我第一次触摸或单击 edittext 时,移动键盘弹出输入文本,这是预期的,但 edittext 中的文本或提示没有被删除。我必须点击两次edittext,然后第一次弹出移动键盘,第二次点击删除文本。

我想在第一次点击时将文本从edittext中删除。

例如:假设 EditText 的初始文本为 用户名,现在当用户第一次点击 edittext 时,用户名 em> 应该会消失,以便用户可以在那里输入他的名字。

下面是我的编辑文本代码。

<EditText
            android:id="@+id/name"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/textView2"
            android:layout_marginTop="30dp"
            android:layout_marginLeft="15dp"
            android:layout_marginRight="15dp"
            android:gravity="start|top"
            android:hint="Enter Name..."
            android:textColor="#8c8c8c"
            android:inputType="textMultiLine" />

请在上面提供帮助,我也尝试过 onClickListener,这样当我们点击 edittext 时,它会使文本为空,但这也不起作用。我必须点击 2 次才能删除文本。我希望文本在第一次触摸时消失。

【问题讨论】:

标签: android android-layout android-edittext android-textinputedittext


【解决方案1】:

请检查以下几点 -

  1. 检查是否已将任何文本动态设置为 EditText?如果是,您可以将其删除并将文本设置为提示。正如您所说,if EditText is having initial text as User Name... 如果您想将文本显示为提示,或者您只需要第一次显示。然后,将所需的文本 User Name 设置为提示 NOT AS TEXT 到 editText。

您可以使用editText.setHint("UserName") 动态设置提示或android:hint="UserName" 在xml 中设置提示。

如果不是这种情况,那么您需要发布代码 sn-ps 以找到确切的错误。

【讨论】:

  • 我没有在我刚刚在 xml 文件中放入 android:hint="Enter Name..." 的代码中设置 Enter Name...,如上所示。我想删除输入名称...当用户第一次单击文本时。即使在我设置了提示之后,它也不会通过单击删除我必须点击 2 次。
  • 您是否在代码中的任何位置动态设置了 editText 中的文本?由于您的 xml 代码看起来不错。这不应该发生。
  • 如果我将文本放入提示中,那么当我第一次单击时,edittext 光标将出现在 Enter Name... 的末尾如果我再次单击它会转到edittext的开头,然后我可以输入edittext。
  • 当我第一次点击时,光标会出现在 Enter Name... 的末尾,所以如果我输入一些内容,它就会出现在 Enter Name... 之后b>输入名称...,但如果我第二次点击,光标将开始编辑文本。
  • 在我的代码中,我只是使用 EditText name=findViewById(R.id.name); 访问编辑文本的值
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-05-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-20
相关资源
最近更新 更多