zoukankan      html  css  js  c++  java
  • 轮播图学习2:实现轮播图自动跳转

    要实现轮播图自动跳转 需要自己写一个类ScoViewParger继承ViewParger,将activity_mian.xml文件中关于ViewRarger的布局改写成为包名+类名的方式

    ScoViewParger类:
    package com.example.myapplication23;
    
    import android.content.Context;
    import android.os.Handler;
    import android.os.Looper;
    import android.util.AttributeSet;
    
    import androidx.annotation.NonNull;
    import androidx.annotation.Nullable;
    import androidx.viewpager.widget.ViewPager;
    
    
    import java.util.logging.LogRecord;
    
    public class ScoViewParger extends ViewPager {
        private Handler handler;
        public ScoViewParger(@NonNull Context context) {
            this(context,null);
        }
    
        public ScoViewParger(@NonNull Context context, @Nullable AttributeSet attrs) {
            super(context, attrs);
            handler=new Handler(Looper.getMainLooper());
    
    
    
        }
    
        @Override
        protected void onAttachedToWindow() {
            super.onAttachedToWindow();
            startLooper();
        }
        private void startLooper(){
            handler.postDelayed(mTask,5000);
        }
        private Runnable mTask=new Runnable() {
            @Override
            public void run() {
                int currentItem=getCurrentItem();
                currentItem++;
                setCurrentItem(currentItem);
                postDelayed(this,5000);
            }
        };
        @Override
        protected void onDetachedFromWindow() {
            super.onDetachedFromWindow();
            stopLooper();
        }
        private void stopLooper(){
            handler.removeCallbacks(mTask);
        }
    }

    activity_mian.xml

    <?xml version="1.0" encoding="utf-8"?>
    
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        xmlns:tools="http://schemas.android.com/tools"
        tools:content=".MainActivity">
    
        <com.example.myapplication23.ScoViewParger
            android:id="@+id/im1"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:scaleType="fitXY"/>
    
    
    </RelativeLayout>

    其他部分同上一篇博客

  • 相关阅读:
    Oracle 导入导出报错的简单处理
    Windows 下面 winrar 压缩简单记录
    zip 与 unzip的简单使用
    [知乎]山东:一枚神奇独一的“三棱锥”
    【喷嚏图卦】 委内瑞拉崩溃的背后:渐行渐近的石油危机
    [互联网]2018年互联网套路简史
    [wiki]陶德曼调停
    [阮一峰]找回密码的功能设计
    sap 最新财报以及云业务转型情况
    debian 7 安装 rz sz lrzsz
  • 原文地址:https://www.cnblogs.com/wangzhaojun1670/p/12769661.html
Copyright © 2011-2022 走看看