全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Android线程实现图片轮播

一、实现效果

本篇文章实现了简单的图片轮播,初始化3张资源图片,初始化3秒更换一次图片背景,轮换播放。

二、知识点

Thread线程start() 、sleep();handler机制;Android 控件imageView、setBackgroundResource(id);

还算是较为简单的,涉及的基本都是基础知识。

三、基本思路

  1.初始化资源文件

  2.创建一个实例化线程对象 new Thread()

  3.handler 机制,sendMessage(msg); 来处理线程信息,以改变当前显示资源图片为下一张

  4.线程设置睡眠时间,来设置图片轮播的时间间隔,

  5.每隔一段时间通过 handler 机制发送一次信息来实现图片资源变换来实现轮播

-->>代码实现:

  (1) layout 布局:就一个ImageView 控件

k1.jpg ,k2.jpg, k3,jpg 是三张图片

(2)  java 代码实现对背景图片的轮播变换操作:

package com.example.ususaltest; 
 
import android.app.Activity; 
import android.os.Bundle; 
import android.os.Handler; 
import android.os.Message; 
import android.widget.ImageView; 
 
public class MainActivity extends Activity { 
 
  int i = 1;//变量 
  private ImageView imageView; 
  @Override 
  protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
 
    initView();//加载控件 
    initEvent();//控件操作 
     
  } 
   
  private void initView() { 
    imageView = (ImageView) findViewById(R.id.id_image); 
  } 
   
  private void initEvent(){ 
     
     
    final Handler handler = new Handler(){ 
      @Override 
      public void handleMessage(Message msg) {//接收消息,并处理 
        super.handleMessage(msg); 
        if (msg.what == 1)  
          imageView.setBackgroundResource(R.drawable.k1);//设置变换后的图片资源 
        else if (msg.what == 2)  
          imageView.setBackgroundResource(R.drawable.k2); 
        else if (msg.what == 3)  
          imageView.setBackgroundResource(R.drawable.k3); 
        else  
          imageView.setBackgroundResource(R.drawable.k1); 
      } 
    }; 
     
    new Thread(new Runnable() { 
      @Override 
      public void run() { 
        while (true) { 
          try { 
          Thread.sleep(3000);//暂停 3 秒 
        } catch (InterruptedException e) {e.printStackTrace();} 
        Message message = new Message(); 
        message.what = i; 
        handler.sendMessage(message);//发送消息 
         
        if(i == 3)//3张图片播放完,重置 
          i = 0; 
         
        i++; 
        } 
      } 
    }).start(); 
  } 
 
} 

(3) 到此已实现图片轮播效果,但可观赏度不高,可以适当的加一些动画什么的,使图片转换时更加有动感,动态的变换,看得到变换的过程,而不是单纯的静态的变换。

四、拓展延伸 -- 动画

加上缩放动画,使图片轮换时能看到更换过程,动态化轮播功能

new Thread(new Runnable() { 
      @Override 
      public void run() { 
        while (true) { 
          try { 
          Thread.sleep(3000); 
        } catch (InterruptedException e) {e.printStackTrace();} 
        Message message = new Message(); 
        message.what = i; 
        handler.sendMessage(message);//发送消息 
        //加上缩放动画 
        <span style="background-color: rgb(51, 255, 255);">AnimationSet set = new AnimationSet(true); 
        ScaleAnimation scale = new ScaleAnimation(1.5f, 1.0f, 1.5f, 1.0f ,Animation.RELATIVE_TO_SELF, 0.5f ,Animation.RELATIVE_TO_SELF, 0.5f); 
        scale.setDuration(500); 
        set.addAnimation(scale); 
        imageView.setAnimation(set);</span> 
         
        if(i == 3)//3张图片播放完,重置 
          i = 0; 
         
        i++; 
        } 
      } 
    }).start(); 

这样效果上会好一点,也可以加位移动画,使换图片时,让图片从右边进来,或左边进来右边出去之类的动画。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# Android  # 图片轮播  # Android实现图片轮播效果的两种方法  # Android实现图片轮播效果  # Android自动播放Banner图片轮播效果  # Android实现广告图片轮播效果  # Android ViewPager实现图片轮播效果  # Android实现图片轮播切换实例代码  # Android自定义图片轮播Banner控件使用解析  # Android高级图片滚动控件实现3D版图片轮播器  # Android客户端实现图片轮播控件  # Android实现背景图片轮播  # 来实现  # 都是  # 发送消息  # 看得  # 不高  # 到此  # 每隔  # 创建一个  # 会好  # 大家多多  # 三张  # 下一张  # 而不是  # 睡眠时间  # 实现了  # 加载  # 能看到 


相关文章: 如何在阿里云通过域名搭建网站?  太原网站制作公司有哪些,网约车营运证查询官网?  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  如何将凡科建站内容保存为本地文件?  如何用IIS7快速搭建并优化网站站点?  西安专业网站制作公司有哪些,陕西省建行官方网站?  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  建站之星安装后如何自定义网站颜色与字体?  小说建站VPS选用指南:性能对比、配置优化与建站方案解析  如何用美橙互联一键搭建多站合一网站?  山东网站制作公司有哪些,山东大源集团官网?  实惠建站价格推荐:2025年高性价比自助建站套餐解析  建站主机助手选型指南:2025年热门推荐与高效部署技巧  广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?  相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?  大连网站制作公司哪家好一点,大连买房网站哪个好?  网站制作壁纸教程视频,电脑壁纸网站?  建站之星Pro快速搭建教程:模板选择与功能配置指南  如何用搬瓦工VPS快速搭建个人网站?  如何在万网ECS上快速搭建专属网站?  如何彻底删除建站之星生成的Banner?  小型网站建站如何选择虚拟主机?  建设网站制作价格,怎样建立自己的公司网站?  建站与域名管理如何高效结合?  如何选择服务器才能高效搭建专属网站?  已有域名能否直接搭建网站?  建站之星如何快速更换网站模板?  已有域名建站全流程解析:网站搭建步骤与建站工具选择  网站制作员失业,怎样查看自己网站的注册者?  香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧  Android滚轮选择时间控件使用详解  高端建站如何打造兼具美学与转化的品牌官网?  定制建站流程步骤详解:一站式方案设计与开发指南  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  ,石家庄四十八中学官网?  建站之星备案流程有哪些注意事项?  宝塔面板如何快速创建新站点?  招商网站制作流程,网站招商广告语?  Swift中swift中的switch 语句  如何在云虚拟主机上快速搭建个人网站?  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  佛山企业网站制作公司有哪些,沟通100网上服务官网?  高防服务器租用首荐平台,企业级优惠套餐快速部署  b2c电商网站制作流程,b2c水平综合的电商平台?  如何在景安云服务器上绑定域名并配置虚拟主机?  如何在香港免费服务器上快速搭建网站?  定制建站模板如何实现SEO优化与智能系统配置?18字教程  如何选择高效稳定的ISP建站解决方案?  如何在阿里云购买域名并搭建网站?  电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。