手机直播源码,当前页卡指示器的简单实现方法

手机直播源码,当前页卡指示器的简单实现方法

初始化的时候先初始化与list集合size相等的圆点个数:

 

1
<br> int size = mList.size();<br>        initPageIndicator(size);

然后是给ViewPager设置监听事件,并在onPageSelected方法中设置被选中的当前页圆点为选中状态:

 

1
<br> <br> <br> mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {<br>            @Override<br>            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {<br> <br>            }<br> <br>            @Override<br>            public void onPageSelected(int position) {<br> <br>                System.out.println(position+"-----------");<br>                for (int i = 0; i < 4; i++) {<br>                    setIndicator(i, i == position);<br>                }<br>            }<br> <br>            @Override<br>            public void onPageScrollStateChanged(int state) {<br> <br>            }<br>        });

 

初始化指示点:

 

1
<br>private void setIndicator(int i, boolean enabled) {<br>        View view = mIndicator.getChildAt(i);<br>        if (view != null) {<br>            view.setEnabled(enabled);<br>        }<br>    }<br> <br>    private void initPageIndicator(int size) {<br>        if (size <= 1) {<br>            return;<br>        }<br>        for (int i = 0; i < size; i++) {<br>            addPageIndicator(i);<br>        }<br> <br>        setIndicator(0, true);<br>    }<br> <br>    private void addPageIndicator(int i) {<br>        View dot = new View(this);<br>        dot.setBackgroundResource(R.drawable.dot_bg_black_selector);<br>        LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(20, 20);<br>        if (i != 0) {<br>            params.leftMargin = 40;<br>        }<br>        params.topMargin = 20;<br>        params.bottomMargin = 10;<br>        dot.setEnabled(false);<br>        dot.setLayoutParams(params);<br>        mIndicator.addView(dot);<br>    }<br>  

 

其中在初始化指示点的时候引用的drawable文件夹下的selector文件为:

 

1
<br><?xml version="1.0" encoding="utf-8"?><br><selector xmlns:android="http://schemas.android.com/apk/res/android"><br> <br>    <item android:drawable="@android:drawable/alert_dark_frame" android:state_enabled="true"/><br>    <item android:drawable="@android:drawable/alert_light_frame" android:state_enabled="false"/><br></selector> 

 

以上就是 手机直播源码,当前页卡指示器的简单实现方法,更多内容欢迎关注之后的文章

 

posted @   云豹科技-苏凌霄  阅读(27)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
历史上的今天:
2022-10-13 直播app开发搭建,关于对象内函数定义的一种方式——中括号
2022-10-13 直播平台搭建源码,实现活动报名登记
2022-10-13 直播电商平台开发,BigDecimal 加减乘除顺序验证
2021-10-13 在线直播系统源码,Dart-Flutter DateTime日期转换
2021-10-13 直播带货源码,图片左上角或右上角点击返回按钮
2021-10-13 聊天平台源码,聊天平台如何获取到音频流
点击右上角即可分享
微信分享提示