轮播加点

关于小红书的小程序不同数量的轮播图,展示不一样的轮播指示点的实现 用过小红书的人,应该注意到,小红书的详情页轮播模块做的有点花里胡哨,可谓天下产品一家亲。人家有的,我们也想有。于是在百度不到的情况下,只能自己想办法写类似的轮播指示点效果了。 先看想要实现的效果图: 想要坐这样的指示点效果,就要分情况讨论。以下是我个人的思路: 大致可以分为两种情况: 1.图片小于5张的时候只有一种轮播指示点的效果。(就是我们平时最常见的五个轮播点一样大进行轮播... 阅读详情
public class MainActivity extends AppCompatActivity {
    private MyAdapters adapter;
    private ViewPager vp;
    private GridView gv;
        String path="http://v3.wufazhuce.com:8000/api/reading/index/?version=3.5.0&platform=android";
   // private List<Bean.DataBean.EssayBean> list;
  //List<Bean.DataBean.SerialBean> list;
   List<Bean.DataBean.QuestionBean> list;
    List<ImageView> listIV=new ArrayList<>();
    private List<Bean.DataBean.EssayBean.AuthorBean> author;
       Handler handler=new Handler(){
           @Override
           public void handleMessage(Message msg) {
               super.handleMessage(msg);
             String json= (String) msg.obj;
              int position= msg.what;
               switch (position){
                   case 0:
                       Gson gson=new Gson();
                       Bean bean = gson.fromJson(json, Bean.class);
                       list =bean.getData().getQuestion();
                       // author = list.get(0).getAuthor();
                       vp.setAdapter(new MyAdapter());
                    adapter = new MyAdapters(MainActivity.this,list);
                      gv.setAdapter(adapter);
                       //初始化点
                       getInitDoa();
                       sendmsg();
                       break;
                   case 1:
                       int currentItem = vp.getCurrentItem();
                       currentItem++;
                       vp.setCurrentItem(currentItem);
                       sendmsg();
               }
           }


       };
    private LinearLayout ll;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        vp = (ViewPager) findViewById(R.id.vp);
        gv = (GridView) findViewById(R.id.gv);
        ll = (LinearLayout) findViewById(R.id.ll);
        new Thread(){
            @Override
            public void run() {
                super.run();
                String getstr = WorkUtils.getstr(path);
                Message msg=new Message();
                msg.obj=getstr;
                handler.sendMessage(msg);
                msg.what=0;
            }
        }.start();
            vp.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
                @Override
                public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

                }

                @Override
                public void onPageSelected(int position) {
                      for (int x=0;x<listIV.size();x++){
                          if (x==position%listIV.size()){
                              listIV.get(x).setImageResource(R.mipmap.loginb);
                          }else {
                              listIV.get(x).setImageResource(R.mipmap.logina);
                          }
                      }
                }

                @Override
                public void onPageScrollStateChanged(int state) {

                }
            });
    }
    public void sendmsg(){
        handler.sendEmptyMessageDelayed(1,2000);
    }
    //*//*初始化点
    private void getInitDoa() {
        for(int x=0;x<list.size();x++){
            ImageView iv=new ImageView(MainActivity.this);
            if (x==0){
                iv.setImageResource( R.mipmap.loginb);
            }else {
                iv.setImageResource(R.mipmap.logina);
            }
            LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(20, 20);
            layoutParams.setMargins(5,0,5,0);
            listIV.add(iv);
            ll.addView(iv,layoutParams);
        }
    }
    class MyAdapter extends PagerAdapter{

        @Override
        public int getCount() {
            return Integer.MAX_VALUE;
        }

        @Override
        public boolean isViewFromObject(View view, Object object) {
            return view==object;
        }

        @Override
        public Object instantiateItem(ViewGroup container, int position) {
            ImageView iv=new ImageView(MainActivity.this);
            String web_url = list.get(position % list.size()).getAuthor_list().get(0).getWeb_url();
            ImageLoader.getInstance().displayImage(web_url,iv);
            container.addView(iv);
            return iv;
        }

        @Override
        public void destroyItem(ViewGroup container, int position, Object object) {
            //super.destroyItem(container, position, object);
            container.removeView((View) object);
        }
    }
}
5种方式轮播图 插件描述:5种方式轮播图. 参考示例:http://www.jq22.com/jquery-info6016 立即下载

相关推荐

轮播图带有小白点的

能够实现轮播图的自动轮播

前端基础CSS定位

一个盒子既有left属性也有right属性,则默认执行left属性。数值越大越上,无单位,只有定位的盒子才有。相对定位(自己原来位置)重复代码多,用并集选择器。绝对定位(父辈位置)

weixin_57780589的博客 361

jQuery实现横向手风琴图片轮播焦点图效果

刚刚介绍完jQuery打飞机游戏,现在我们来点实用的,来分享一款基于jQuery的横向手风琴图片轮播焦点图效果。手风琴效果即图片一张张层叠在一起,鼠标滑过图片时即可展开完整的图片,这样的效果很常见,所以应用也很广泛,大家可以试试这款jQuery焦点图。

html的轮播点怎么设置,html轮播效果的实现

要实现如下图的效果点击可以选择图片;不点击的时候自动轮播;并且点击完后再次自动轮播。思路:如同在房子里透过窗子看路过的火车一样,窗子是不动的,但火车是陆续经过窗子的,所以透过窗子可以看到依次看完所有的火车。1. 让将图片排成一列“火车”:ul中li(li中放着轮播图片)漂浮起来后,就排列成一溜了2. 要有一个“窗口”,把“火车”放到“窗口”里:设置div的固定长度,使它宽度等于ul中一个li的宽度...

weixin_27885313的博客 2047

实用的html5图片轮播效果

实用的html5图片轮播效果

视频播放、视频图片轮播、加导航点的视频图片轮播

该项目有单个视频播放,仿京东视频图片轮播,视频图片轮播加导航点,不同方法加载视频播放的视频图片轮播

css实现轮播图

CSS+HTML创建轮播图

qq_63730529的博客 5595

Cadence Allegro实战:如何精准导入结构DXF文件避免安装偏差(附图层配置技巧)

本文详细讲解了在Cadence Allegro中精准导入结构DXF文件以避免安装偏差的实战技巧。核心在于导入前的单位校准、创建专用图层结构,以及基于坐标基准点的精确对齐方法。文章还分享了将DXF图形转化为正式板框和禁布区、高效管理图层以及向结构工程师导出DXF的完整流程,帮助PCB工程师确保设计与机械结构完美契合。

1a2s3d4f5g的博客 506

使用requestAnimationFrame实现轮播图下面的进度轮播点

使用requestAnimationFrame实现轮播图下面的进度轮播点

weixin_42569526的博客 393

量化策略分享之ST股弱转强,回测年化123%

本策略的核心是精选ST股票,国九条过滤,防止直接暴雷退市,只做ST股票的弱转强,弱转强的认定标准是前日涨停但昨日不涨停,昨日收盘价大于前一日最低价,昨日收盘价大于10日线,昨日成交量大于前一日的成交量但小于前一日成交量的10倍,股价大于1;这类股票强势,有资金介入,能获得超额收益。

qq_29301281的博客 1268

MATLAB2021b详细安装教程

1.下载 2.安装 下载安装包后打开iso文件,若是无法打开请用解压软件打开。 ①打开MATLAB_R2021b_win64,双击软件开始安装 ② 一直点击下一步,直到步骤③ ③选择我已有我的许可证的文件密钥,并输入62551-02011-26857-57509-64399-54230-13279-37181-62117-65158-40352-64197-45508-24369-45954-39446-39538-16936-10698-58393-44718-32560-10501-40

惜洛-Jankin的博客 9万+

加点,无限轮播

List IVlist=new ArrayList();/** * 加点 */private void initDot() { for (int i = 0; i image.length; i++) { ImageView lv=new ImageView(getActivity()); if(i==0) { lv.setIm

WANGAISHI121221的博客 303

AI应用架构师:引领半导体良率AI预测的变革浪潮

在半导体行业这个技术密集、资本密集且竞争异常激烈的领域,良率是决定企业盈利能力的关键指标。每提升1%的良率可能意味着数亿美元的利润增长。然而,随着制程节点不断缩小至3nm、2nm甚至更先进水平,传统的良率管理方法已难以应对日益复杂的制造流程和指数级增长的数据量。本文将深入探讨AI应用架构师如何成为这场变革的核心驱动力,通过设计和实施先进的AI预测系统,将半导体良率预测从传统的"事后分析"转变为"事前预测"和"实时优化"。

AI大模型应用之禅 403

viewpager无限轮播加点

//首先在Xml中画点  画两个颜色不一样的点  在drawable文件夹下          android:shape="oval">         //第二个点        android:shape="oval">           代码 public c

asdf1741的博客 302

域控制器迁移后NETLOGON共享丢失的修复指南

本文详细解析了在Windows域控制器迁移后NETLOGON共享丢失的故障现象与修复方法。通过使用Dcdiag工具诊断,定位注册表键值SysVolReady异常及SCRIPTS目录缺失等核心原因,并提供了修改注册表、创建目录、重启Netlogon服务等逐步修复指南,帮助管理员快速恢复域用户登录功能,确保业务连续性。

weixin_29245767的博客 88

软考高级架构师笔记-10数学计算题

专栏《软考高级架构设计师》更新了,本章列举了10个场景计算题的解法,温故而知新,大家快来卷一卷

java后端开发的博客,不仅仅是后端开发 1598

无限轮播加点

package com.example.day_15_; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.support.v

banzhanyinghuo的博客 261

Coverity本地增量C/C++代码检查(Linux)操作简介

Coverity 是一款精确的综合静态分析与应用安全测试 (SAST) 平台,它可以在编写代码时发现关键的缺陷和安全缺陷,防止它们变成安全漏洞、故障或维护缺陷。

1484

无限轮播2自动加点

package com.example.lxb2017917; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.support.v4.view.PagerAdapter; import andr

Liuxb_zao的博客 546

Central Finance 全景解析:用 SAP S/4HANA 构建跨系统的财务中台与渐进式转型路径

Central Finance 是基于 SAP S/4HANA 的一种部署与应用场景:在不打断现有异构源系统运营的前提下,把多套 SAP 与非 SAP 系统中的财务与管理会计数据实时/准实时复制到一套中心化的 SAP S/4HANA 中,作为统一的记账与分析底座,逐步把选定的财务流程(如预算控制、付款、固定资产结账等)迁入中心系统。这让企业既能快速获得统一报表与统一核算结构,又为未来的整体迁移留出了弹性路径。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 392

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

ViewPger的无限轮播 自动轮播 和加点

//首先在Xml中画点  画两个颜色不一样的点  在drawable文件夹下     android:shape="rectangle">              //第二个点     android:shape="rectangle">              代码 pu

liangjianing1121的博客 372

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Banner的简单实现 (实现无限自动轮播加点)

1---添加依赖   compile 'com.youth.banner:banner:1.4.9' //最新版本 2.添加权限 *       * 3在xml中实现Banner的控件  xmlns:app="http://schemas.android.com/apk/res-auto"  android:id="@+id/banner"  android:la

wsj19970717的博客 528

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

上啦加载,下拉刷新,加点轮播图

package com.example.week3_lianxi; import android.annotation.SuppressLint; import android.app.Activity; import android.os.AsyncTask; import android.os.Bundle; import android.os.Handler; import android...

lwx960315的博客 229

viewpage自动轮播

XML: <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#fff" > <android.su

bian_xingkongjinghao的博客 392

XListview 添加头布局 并实现加点自动无限轮播

一.  前提  xlistciew  可以完美的运行后         该方法也必须创建 xl.setPullRefreshEnable(true);        现创建单独的xml  内设 <android.support.v4.view.ViewPager android:id="@+id/vp" android:layout_width="match_

wsj19970717的博客 313
上一篇: 侧滑和radiobutton跳转
下一篇: AngularJS自定义过滤器
wanglinuo521
博客等级 码龄9年 11粉丝 53原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值