一、前言
所谓引导页就是在用户第一次使用APP时,会指导用户点击某个按钮,告诉用户这个按钮的具体作用。引导用户使用APP,而MaterialIntroView引导页框架则是一个比较好用的框架,可以实现大部分引导功能,可以针对某一个view进行详细描述。
二、使用代码
1、下载jar包,反正我是根据这个地址没有下载到jar包,然后是直接调用的aar包,具体包可以去我的资源列表去下载。
compile 'com.github.iammert:MaterialIntroView:1.6.0'
2、具体代码
public class MaterialInfoActivity extends BaseActivity implements MaterialIntroListener{
private TextView tv_material_info;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_material_info);
initView();
initData();
}
private void initView(){
SiActionBar.getTitleAndBackActionBar(getSupportActionBar(), new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
}, "MaterialInfo引导页使用");
tv_material_info=findViewById(R.id.tv_material_info);
}
private void initData(){
new MaterialIntroView.Builder((Activity) this)
.enableDotAnimation(true)
.setFocusGravity(FocusGravity.CENTER)
.setFocusType(Focus.NORMAL)
.setShape(ShapeType.RECTANGLE)
.setDelayMillis(200)
.setFadeAnimationDurationMillis(200)
.setTextColor(Color.WHITE)
.enableFadeAnimation(true)
.performClick(true)
.setTarget(tv_material_info)
.setMaskColor(Color.parseColor("#dc000000"))
.enableArrow(false)
.setInfoText("")
.setInfoImg(R.drawable.img_guide_4)
.dismissOnTouch(true)
.setTargetPadding(0)
.setListener(this)
.setUsageId("4") //点击消失后传递的值
.show();
}
/*引导页引用的接口*/
@Override
public void onUserClicked(String s) {
showToastShort("点击页面成功_____"+s);
// initData();
}
三、属性详解
方法 | 用途 |
---|---|
enableDotAnimation | 是否显示焦点中央的动态白点。样式请看上文效果图 |
enableIcon | 是否显示提示图标。即:上文效果图中的绿色问号 |
setFocusGravity | 焦点处于目标 View 什么方位 |
setFocusType | 焦点覆盖面积。最小,一般,亦或是尽可能将整个目标 view 全覆盖 |
setDelayMillis | 遮罩引导延迟多久后出现 |
enableFadeAnimation | 是否启用渐变 |
performClick | 点击焦点的时候,是否将单击事件传递给目标 view |
setInfoText | 引导文字 |
setTextColor | 引导文字颜色 |
setInfoTextSize | 引导文字大小 |
setMaskColor | 遮罩颜色 |
setTarget | 引导动画所关注的目标 view |
setTargetPadding | 在原本焦点圈的基础上,增加焦点半径 |
dismissOnTouch | 是否触摸任意区域遮罩消失 |
setListener | 焦点内有效点击监听器 |
setConfiguration | 统一设置参数。该方法将会覆盖上述部分属性 |
setUsageId | 该事件的唯一ID,开源库自带事件记录 SharedPreferences。如果该引导动画成功显示并消失,则第二次调用 show() 方法将不会显示引导遮罩。 |
四、总结
MaterialIntroView引导页其实非常简单,自身内部也支持整个APP只执行一次引导页的功能。