tooltips

介绍:

在一个view旁边添加提示的工具。

运行效果:

使用说明:

依赖

dependencies {
    compile 'com.tomergoldst.android:tooltips:1.0.1'    
}

创建一个ToolTipsManager对象

ToolTipsManager mToolTipsManager;
mToolTipsManager = new ToolTipsManager();

使用 ToolTip Builder 来构造tip

ToolTip.Builder builder = new ToolTip.Builder(this, mTextView, mRootLayout, "Tip message", ToolTip.POSITION_ABOVE);

这里的mTextView是按着tip的那个view,mRootLayout是tip将被添加到的那个布局,它必须是RelativeLayout,FrameLayout或者类似的布局,LinearLayout是不行的,不过你总是可以把LinearLayout放在另一个布局中。最好传入一个更高一级的布局,这样tip能显示的空间更大些。

选项: 自定义tip的背景颜色,文字颜色,对齐方式,文字对齐方式等等。

builder.setAlign(ToolTip.ALIGN_LEFT)
builder.setBackgroundColor(getResources().getColor(R.color.colorOrange));
builder.setTextColor(getResources().getColor(R.color.colorBlack));
builder.setGravity(ToolTip.GRAVITY_RIGHT);

使用ToolTipManger显示tip

重要:这必须在布局已经绘制完成之后调用。你可以重写activity的onWindowFocusChanged()并在里面显示,或者在 onStart()中使用一个延迟了的runnable,或者在用户操作的时候响应或者其它适用于你的方式。

mToolTipsManager.show(builder.build());

通过点击tip让它消失,如果你想在代码里面dismiss,最简单的办法是:

mToolTipsManager.findAndDismiss(mTextView);

其中,mTextView就是刚刚要求被放在tip旁边的那个view。

如果你想响应tip的dismiss事件,实现ToolTipsManager.TipListener接口:

public class MainActivity extends AppCompatActivity implements ToolTipsManager.TipListener
.
.
@Override
protected void onCreate(Bundle savedInstanceState) {
    mToolTipsManager = new ToolTipsManager(this);
}
.
.
@Override
public void onTipDismissed(View view, boolean byUser) {
    Log.d(TAG, "Dismissed view " + view.hashCode() + " ByUser = " + byUser);
}
已下载
0