EditText android:hint not disappearing onFocus

南楼画角 提交于 2019-12-08 15:59:01

问题


I am on Android 4+ and I am trying to add hints to my edit text widgets. I tried adding the hint to the layout as follows...

 <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"
        />

But when I focus on the Text box it writes over the hint instead of the hint disappearing.

I found documentation on adding a onFocus listener to the EditText, but I would like to avoid doing this programatically. The post below also mentioned using selectors but I can't find documentation on how to do that.

Android EditText Hint

So what is the best way to handle this?

I wrote this as recomended here by @A--C and @Flexo because they say "comments that say nothing beyond "me too" are just noise." and it's better to ask the same question again.

Comments like that are very useful as a way to contact the 1st person with the problem... maybe he has already fixed it and can post an answer that will be useful for everybody but didn't posted yet because he thought nobody would care.

I'm not going to post answers to questions only to get points so I can comment... I have more stuff to do... It should be available to everybody anyway.

I wouldn't be posting this if I hadn't tried EVERYTHING to fix my problem.


回答1:


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);

and on the fragment onCreateView:

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

So I had 2 layers of layout. I only had to remove that layout from the Activity onCreate to fix the problem.




回答2:


use following code in oncreate()

myEditText.setOnFocusListener(new OnFocusListener(){
  public void onFocus(){
    myEditText.setHint("");
  }
});


来源:https://stackoverflow.com/questions/14087870/edittext-androidhint-not-disappearing-onfocus

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!