安卓实现引导页下方小点指示器

学习的过程中,遇到了一个问题,网上这种引导页下方的小点怎么实现? 当你滑动界面的时候点会变色来指示当前是第几页


780.jpg

实现思路

使用<FragmeLayout> + <ViewPager> + <LinearLayout>
之前感觉看着麻烦就没有写了,结果发现是因为自己从来没有使用过<FragmeLayout>现在发现原来可以作用在此


indec.jpg

实现步骤:

一:编写两种状态的小点

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="50dp" />
<solid android:color="#d0d0d0"/>
<size android:width="10dp" android:height="10dp"/>
</shape>
<!--这是没有选择状态下的灰色小点-->
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="50dp" />
<solid android:color="#d0d0d0"/>
<size android:width="10dp" android:height="10dp"/>
</shape>
<!--这是选择状态下的蓝色小点-->

引导页面代码

<FrameLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:orientation="vertical"
        android:layout_height="match_parent"
        tools:context=".guide.GuideActivity">

    <androidx.viewpager.widget.ViewPager android:layout_width="match_parent"
                                         android:layout_height="match_parent">

    </androidx.viewpager.widget.ViewPager>
<!--小点放在这下面,上面是ViewPager 用于显示引导图片的-->
<LinearLayout android:layout_width="match_parent"
              android:layout_gravity="bottom"
              android:orientation="horizontal"
              android:padding="5dp"
              android:layout_height="40dp">
    <View android:layout_width="50dp" android:layout_height="match_parent"/>
    <ImageButton android:layout_width="wrap_content"
                 android:layout_weight="1"
                 android:background="#ffffff"
                 android:src="@drawable/guide_indcader_yes"
                 android:layout_height="20dp"/>
    <ImageButton android:layout_width="20dp"
                 android:background="#ffffff"
                 android:layout_weight="1"
                 android:src="@drawable/guide_indcader_no"
                 android:layout_height="20dp"/>
    <ImageButton android:layout_width="20dp"
                 android:background="#ffffff"
                 android:layout_weight="1"
                 android:src="@drawable/guide_indcader_no"
                 android:layout_height="20dp"/>
    <ImageButton android:layout_width="20dp"
                 android:background="#ffffff"
                 android:layout_weight="1"
                 android:src="@drawable/guide_indcader_no"
                 android:layout_height="20dp"/>
    <ImageButton android:layout_width="20dp"
                 android:background="#ffffff"
                 android:layout_weight="1"
                 android:src="@drawable/guide_indcader_no"
                 android:layout_height="20dp"/>
    <View android:layout_width="50dp" android:layout_height="match_parent"/>
</LinearLayout>
</FrameLayout>

界面就是这样实现了,然后就是滑动屏幕之后的切换

实现思路:

ViewPager的监听事件
ImageButton的监听事件,然后切换引导图片,切换小点颜色xml文件就好了~
主要还是提供实现的思路并且让自己熟练一下
要是对你有帮助的话留下赞~

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容