Android 快速实现新手引导层

作者: 你要快乐_ae30 | 来源:发表于2018-07-23 08:45 被阅读37次

            这是一款可以通过简洁链式调用,一行代码实现引导层的显示,自动判断首次显示,当然也可以通过参数配置来满足不同的显示逻辑和需求。

            通过自定义layout.xml实现文本及image的添加,非常方便位置的调整,避免代码调整各种不好控制的情况:实验5,6次才最终确定文字等的位置。


    效果

    依赖

               compileOnly 'com.android.support:appcompat-v7:25.3.1'

    导入

                项目的build.gradle添加

                        allprojects {

                            repositories {

                            ...

                            maven { url 'https://jitpack.io' }

                           }

                        }

               module的build.gradle添加

                        dependencies {

                                  compile 'com.github.huburt-Hu:NewbieGuide:v2.4.0'

                        }

    确保你的项目中已经依赖了appcompat-v7

    简单使用

    NewbieGuide.with(activity)

            .setLabel("guide1")

            .addGuidePage(GuidePage.newInstance()

                .addHighLight(btnSimple)

                .setLayoutRes(R.layout.view_guide_simple))

            .show();

    其中:

            with方法可以传入Activity或者Fragment,获取引导页的依附者。Fragment中使用建议传入fragment,内部会添加监听,当依附的Fragment销毁时,引导层自动消失。

            setLabel方法用于设置引导页的标签,区别不同的引导页,该方法必须调用设置,否则会抛出异常。内部使用该label控制引导页的显示次数。

            addGuidePage方法添加一页引导页,这里的引导层可以有多个引导页,但至少需要一页。

            GuidePage即为引导页对象,表示一页引导页,可以通过.newInstance()创建对象。并通过addHighLight添加一个或多个需要高亮的view,该方法有多个重载,可以设置高亮的形状,以及padding等(默认是矩形)。setLayoutRes方法用于引导页说明布局,就是上图的说明文字的布局。

            show方法直接显示引导层,如果不想马上显示可以使用build方法返回一个Controller对象,完成构建。需要显示得时候再次调用Controller对象的show方法进行显示。

    相关文章

      网友评论

      本文标题:Android 快速实现新手引导层

      本文链接:https://www.haomeiwen.com/subject/dbrdmftx.html