Android 上下滚动TextSwitcher实例详解

发布时间 - 2026-01-11 01:45:57    点击率:

Android 上下滚动TextSwitcher实例详解

1.在activity中需要代码声明

textSwitcher = (TextSwitcher)findViewById(R.id.text_switcher); 
    textSwitcher.setFactory(new ViewFactory() { 
       
      @Override 
      public View makeView() { 
        TextView tv = new  TextView(MainActivity.this); 
        tv.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 16.0F); 
        tv.setTextColor(Color.RED); 
        return tv; 
      } 
    }); 
     
    textSwitcher.setInAnimation(AnimationUtils.loadAnimation(this, R.anim.anim_in)); 
    textSwitcher.setOutAnimation(AnimationUtils.loadAnimation(this, R.anim.anim_out)); 

2.两个anim动画xml

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" 
   android:fillAfter="true"  
  android:shareInterpolator="false"  android:zAdjustment="top"> 
  <translate  
    android:duration="3000"  
    android:fromYDelta="100%p"  
    android:toYDelta="0" /> 
</set> 
<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" 
  android:fillAfter="true"  
  android:shareInterpolator="false"  android:zAdjustment="top"> 
   
   <translate  
    android:duration="3000"  
    android:fromYDelta="0"  
    android:toYDelta="-100%p" />  
</set> 
<style name="pop_anim"> 
    <item name="android:windowEnterAnimation">@anim/anim_in</item> 
  <item name="android:windowExitAnimation">@anim/anim_out</item> 
  </style> 

3.用线程或者定时器实现循环翻动。

Thread t = new Thread(new Runnable() { 
     
    @Override 
    public void run() { 
      while (!flag) { 
        Message msg = new Message(); 
        msg.what = 1; 
        msg.obj = getItem[i]; 
        handler.sendMessage(msg); 
        if (i== 2) { 
          i = 0; 
        } 
        try { 
          t.sleep(3000); 
          i++; 
           
        } catch (InterruptedException e) { 
          // TODO Auto-generated catch block 
          e.printStackTrace(); 
        } 
      } 
       
    } 

4.hanlder更新ui

private Handler handler = new Handler(){ 
    public void handleMessage(android.os.Message msg) { 
       
      textSwitcher.setText((String)msg.obj); 
       
      super.handleMessage(msg); 
    }; 
  }; 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Android  # 滚动TextSwitcher  # 实现上下滚动TextSwitcher  # Android TextSwitcher文本切换器和ViewFlipper使用详解  # Android TextSwitcher实现文字上下翻牌效果(铜板街)  # Android App中用Handler实现ViewPager页面的自动切换  # Android应用中图片浏览时实现自动切换功能的方法详解  # Android开发之使用ViewPager实现图片左右滑动切换效果  # Android App仿微信界面切换时Tab图标变色效果的制作方法  # Android自定义ImageView实现点击两张图片切换效果  # Android实现图片轮播切换实例代码  # Android编程实现图片背景渐变切换与图层叠加效果  # Android实现加载状态视图切换效果  # Android开发实现自动切换文字TextSwitcher功能示例  # 希望能  # 谢谢大家  # 用线  # anim  # loadAnimation  # anim_out  # setOutAnimation  # anim_in  # AnimationUtils  # Color  # setTextColor  # RED  # setInAnimation  # return  # set  # gt  # utf  # http 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 简单实现Android文件上传  网站制作软件有哪些,制图软件有哪些?  Laravel怎么为数据库表字段添加索引以优化查询  Laravel如何处理跨站请求伪造(CSRF)保护_Laravel表单安全机制与令牌校验  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  微信小程序 闭包写法详细介绍  如何撰写建站申请书?关键要点有哪些?  高端智能建站公司优选:品牌定制与SEO优化一站式服务  Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  Laravel如何编写单元测试和功能测试?(PHPUnit示例)  如何在阿里云部署织梦网站?  Laravel如何使用Spatie Media Library_Laravel图片上传管理与缩略图生成【步骤】  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  香港服务器网站卡顿?如何解决网络延迟与负载问题?  JavaScript数据类型有哪些_如何准确判断一个变量的类型  Laravel如何与Inertia.js和Vue/React构建现代单页应用  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  使用PHP下载CSS文件中的所有图片【几行代码即可实现】  韩国服务器如何优化跨境访问实现高效连接?  想要更高端的建设网站,这些原则一定要坚持!  如何制作一个表白网站视频,关于勇敢表白的小标题?  php静态变量怎么调试_php静态变量作用域调试技巧【解答】  如何在服务器上三步完成建站并提升流量?  Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南  Laravel如何配置和使用队列处理异步任务_Laravel队列驱动与任务分发实例  javascript中的try catch异常捕获机制用法分析  如何在局域网内绑定自建网站域名?  Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】  Laravel如何使用Service Container和依赖注入?(代码示例)  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】  如何实现javascript表单验证_正则表达式有哪些实用技巧  python中快速进行多个字符替换的方法小结  如何在云主机快速搭建网站站点?  如何快速生成凡客建站的专业级图册?  Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理  Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程  详解MySQL数据库的安装与密码配置  EditPlus中的正则表达式实战(6)  Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】  如何在搬瓦工VPS快速搭建网站?  黑客入侵网站服务器的常见手法有哪些?  香港服务器建站指南:免备案优势与SEO优化技巧全解析  Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询  Python图片处理进阶教程_Pillow滤镜与图像增强  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  iOS UIView常见属性方法小结  悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤