EditText android:hint在获取焦点时未消失

10
我正在使用Android 4+,尝试给我的编辑文本小部件添加提示。我尝试将提示添加到布局中,如下所示...
 <EditText
        android:id="@+id/bar_name"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:inputType="text"
        android:hint="@string/bar_name_hint"
        />

但是当我聚焦在文本框上时,它会覆盖提示而不是提示消失。

enter image description here

我找到了有关将onFocus监听器添加到EditText的文档,但我想避免在程序中这样做。下面的帖子还提到使用选择器,但我找不到如何执行此操作的文档。

Android EditText Hint

那么处理这个问题的最佳方法是什么?

我按照@A--C和@Flexo的建议here编写了这篇文章,因为他们说“除了‘我也是’之外没有任何意义的评论只是噪音”,而且重新提出同样的问题更好。

像那样的评论非常有用,可以与第一个有问题的人联系...也许他已经解决了问题,并且可以发布一个对每个人都有用的答案,但是因为他认为没有人会在意,所以尚未发布。

我不会为了得分而回答问题,以便可以评论...我有更多的事情要做...它应该对每个人都可用。

如果我没有尝试过所有可以修复我的问题的方法,我就不会发布这个问题。


2
你在测试哪个设备? - FoamyGuy
你可以发布所有的XML代码吗? - ademar111190
不幸的是,我认为<selector>只能用于将Drawable和Color资源制作成状态列表,它还不能用于字符串。最好的方法是通过代码实现(而且这很容易,为什么不呢)。 - Vrashabh Irde
首先,用户是实际输入文本输入还是以其他方式将其放入字段中?您的所有应用程序都遇到了同样的问题吗?包括新的测试应用程序吗?它是否在所有设备上发生,包括模拟器(原始和BlueStacks)? - Paul-Jan
可能是android:hint在使用EditText时无法消失onFocus的重复问题。 - SztupY
@FoamyGuy,Nexus SSlartibartfast,这与我的问题有什么关系?Paul-Jan,该文本是从代码中编写的。不,不,是的(没有尝试过BlueStack)。SztupY,真的吗?别告诉我!!感谢FoamyGuy,ademar11190,Slartibartfast,Paul-Jan和SztupY尝试帮助,但在阅读您的问题之前,我已经解决了问题...我将发布答案。 - xpete
1个回答

11

由于某种原因,我在活动和片段布局中设置了两次。 在Activity的onCreate生命周期方法中:

For some reason, I had the activity and fragment layout set twice. On Activity onCreate:

    protected void onCreate(Bundle savedInstanceState) {
    setContentView(R.layout.edit_consumption);

并且在 onCreateView 方法中:

public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.edit_consumption, null);

所以我有两层布局。我只需要从Activity onCreate中删除那个布局就可以解决问题了。


同样的问题,同样的解决方案。谢谢。 - Paolo M

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接