Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can I set something like "tooltip" for a view in android?

Can I set some message to appear like a "tooltip" for a TextView or Button?

like image 210
Adham Avatar asked Dec 13 '10 20:12

Adham


2 Answers

There's no concept of "hovering" in a touch screen, but you could set a LongClickListener for your View, and have a Toast appear after a long press. Something like this:

Toast viewToast = Toast.makeText(this, "My View Tooltip", Toast.LENGTH_SHORT);

View myView = (View)findViewById(R.id.my_view);

myView.setOnLongClickListener(new OnLongClickListener() {
    @Override
    public void onLongClick(View v) {
        viewToast.show();
    }
});

EDIT: After reading your comment, you should just use the hint attribute in your EditText XML layout:

<EditText
    android:hint="My tip here" />
like image 107
Kevin Coppock Avatar answered Sep 19 '22 03:09

Kevin Coppock


-First set a textview with your hint and set it to invisible.

-Create an animation xml with alpha animation,specify how long you would like to display(at the end set the animation to zero alpha so that it remains invisible) and put it in res->anim folder

-Inside your onCreate and onClick methods of view that need tooltip

  1. set the text view to visible
  2. Hook the animation(like R.anim.tooltip) to this text view

-Use boolean flags and allow the user to switch off the tool tips in menu.

I'll leave the code specifics to you. You find them easily in stackoverflow.

like image 39
Madhu Avatar answered Sep 19 '22 03:09

Madhu