热门标签 | HotTags
当前位置:  开发笔记 > Android > 正文

Android基于ViewFilpper实现文字LED显示效果示例

这篇文章主要介绍了Android基于ViewFilpper实现文字LED显示效果,结合完整实例形式分析了Android使用ViewFilpper实现文字LED显示动画效果的相关步骤与实现技巧,需要的朋友可以参考下

本文实例讲述了Android基于ViewFilpper实现文字LED显示效果。分享给大家供大家参考,具体如下:

这里给出来自Android官方API DEMO中动画效果实例。

/**
 * FlipperView文字效果动画之:文字滚动动画
 *
 * @description:
 * @author ldm
 * @date 2016-5-17 上午9:58:26
 */
public class Animation2 extends Activity implements
    AdapterView.OnItemSelectedListener {
  // Spinner数据源
  private String[] mStrings = { "Push up", "Push left", "Cross fade",
      "Hyperspace" };
  // 控件ViewFlipper
  private ViewFlipper mFlipper;
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.animation_2);
    // 初始化UI控件
    initViews();
  }
  private void initViews() {
    mFlipper = ((ViewFlipper) this.findViewById(R.id.flipper));
    mFlipper.startFlipping();
    Spinner s = (Spinner) findViewById(R.id.spinner);
    ArrayAdapter adapter = new ArrayAdapter(this,
        android.R.layout.simple_spinner_item, mStrings);
    // 定义Spinner下拉菜单模式
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    // 设置数据
    s.setAdapter(adapter);
    // 添加监听
    s.setOnItemSelectedListener(this);
  }
  /**
   * Spinner的item选择监听事件处理
   */
  @Override
  public void onItemSelected(AdapterView<&#63;> parent, View v, int position,
      long id) {
    switch (position) {
    case 0:// 文字从下进入,从上移出,伴随透明度变化
      mFlipper.setInAnimation(AnimationUtils.loadAnimation(this,
          R.anim.push_up_in));
      mFlipper.setOutAnimation(AnimationUtils.loadAnimation(this,
          R.anim.push_up_out));
      break;
    case 1:// 文字从右侧向左进入,从右侧移出,伴随透明度变化
      mFlipper.setInAnimation(AnimationUtils.loadAnimation(this,
          R.anim.push_left_in));
      mFlipper.setOutAnimation(AnimationUtils.loadAnimation(this,
          R.anim.push_left_out));
      break;
    case 2:// 文字透明度改变,从0-1-0
      mFlipper.setInAnimation(AnimationUtils.loadAnimation(this,
          android.R.anim.fade_in));
      mFlipper.setOutAnimation(AnimationUtils.loadAnimation(this,
          android.R.anim.fade_out));
      break;
    default:// 多维空间动画(复合动画效果)
      mFlipper.setInAnimation(AnimationUtils.loadAnimation(this,
          R.anim.hyperspace_in));
      mFlipper.setOutAnimation(AnimationUtils.loadAnimation(this,
          R.anim.hyperspace_out));
      break;
    }
  }
  @Override
  public void onNothingSelected(AdapterView<&#63;> parent) {
    // TODO Auto-generated method stub
    // DO NOTHING
  }
}

布局文件,TextView中添加自己想显示的文字


  
    
    
    
    
  
  
  


动画文件res/anim文件夹下

1. push_up_in.xml

<&#63;xml version="1.0" encoding="utf-8"&#63;>

  
  


2. push_up_out.xml

<&#63;xml version="1.0" encoding="utf-8"&#63;>

  
  

3. push_left_in.xml

<&#63;xml version="1.0" encoding="utf-8"&#63;>

  
  


4. push_left_out.xml

<&#63;xml version="1.0" encoding="utf-8"&#63;>

  
  


5. fade_in.xml

<&#63;xml version="1.0" encoding="utf-8"&#63;>


6. fade_out.xml

<&#63;xml version="1.0" encoding="utf-8"&#63;>


7. hyperspace_in.xml

<&#63;xml version="1.0" encoding="utf-8"&#63;>


8. hyperspace_out.xml

<&#63;xml version="1.0" encoding="utf-8"&#63;>

  
  
    
    
  


附开源代码:https://github.com/ldm520/ANDROID_API_DEMOS

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发动画技巧汇总》、《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android文件操作技巧汇总》、《Android资源操作技巧汇总》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。


推荐阅读
  • 提升Android开发效率:Clean Code的最佳实践与应用
    在Android开发中,提高代码质量和开发效率是至关重要的。本文介绍了如何通过Clean Code的最佳实践来优化Android应用的开发流程。以SQLite数据库操作为例,详细探讨了如何编写高效、可维护的SQL查询语句,并将其结果封装为Java对象。通过遵循这些最佳实践,开发者可以显著提升代码的可读性和可维护性,从而加快开发速度并减少错误。 ... [详细]
  • ButterKnife 是一款用于 Android 开发的注解库,主要用于简化视图和事件绑定。本文详细介绍了 ButterKnife 的基础用法,包括如何通过注解实现字段和方法的绑定,以及在实际项目中的应用示例。此外,文章还提到了截至 2016 年 4 月 29 日,ButterKnife 的最新版本为 8.0.1,为开发者提供了最新的功能和性能优化。 ... [详细]
  • REST与RPC:选择哪种API架构风格?
    在探讨REST与RPC这两种API架构风格的选择时,本文首先介绍了RPC(远程过程调用)的概念。RPC允许客户端通过网络调用远程服务器上的函数或方法,从而实现分布式系统的功能调用。相比之下,REST(Representational State Transfer)则基于资源的交互模型,通过HTTP协议进行数据传输和操作。本文将详细分析两种架构风格的特点、适用场景及其优缺点,帮助开发者根据具体需求做出合适的选择。 ... [详细]
  • 本文探讨了资源访问的学习路径与方法,旨在帮助学习者更高效地获取和利用各类资源。通过分析不同资源的特点和应用场景,提出了多种实用的学习策略和技术手段,为学习者提供了系统的指导和建议。 ... [详细]
  • 在更换电脑或重装系统时,用户经常需要处理诸如备份收藏夹、电子邮件、用户配置文件和常用文档等任务。尽管这些操作并不复杂,但却相当繁琐。本文介绍了一种利用Windows 7中的“轻松传送”功能,高效便捷地在两台电脑之间同步数据的方法,大大简化了这一过程。 ... [详细]
  • 本文深入探讨了Java多线程环境下的同步机制及其应用,重点介绍了`synchronized`关键字的使用方法和原理。`synchronized`关键字主要用于确保多个线程在访问共享资源时的互斥性和原子性。通过具体示例,如在一个类中使用`synchronized`修饰方法,展示了如何实现线程安全的代码块。此外,文章还讨论了`ReentrantLock`等其他同步工具的优缺点,并提供了实际应用场景中的最佳实践。 ... [详细]
  • 观察 | 求职体验:收到录用通知的公司通常不深究技术细节,而那些详细追问的公司往往没有后续进展
    观察 | 求职体验:收到录用通知的公司通常不深究技术细节,而那些详细追问的公司往往没有后续进展 ... [详细]
  • C++ 开发实战:实用技巧与经验分享
    C++ 开发实战:实用技巧与经验分享 ... [详细]
  • SSAS入门指南:基础知识与核心概念解析
    ### SSAS入门指南:基础知识与核心概念解析Analysis Services 是一种专为决策支持和商业智能(BI)解决方案设计的数据引擎。该引擎能够为报告和客户端应用提供高效的分析数据,并支持在多维数据模型中构建高性能的分析应用。通过其强大的数据处理能力和灵活的数据建模功能,Analysis Services 成为了现代 BI 系统的重要组成部分。 ... [详细]
  • 今天我开始学习Flutter,并在Android Studio 3.5.3中创建了一个新的Flutter项目。然而,在首次尝试运行时遇到了问题,Gradle任务 `assembleDebug` 执行失败,退出状态码为1。经过初步排查,发现可能是由于依赖项配置不当或Gradle版本不兼容导致的。为了解决这个问题,我计划检查项目的 `build.gradle` 文件,确保所有依赖项和插件版本都符合要求,并尝试更新Gradle版本。此外,还将验证环境变量配置是否正确,以确保开发环境的稳定性。 ... [详细]
  • 本文探讨了如何有效地构建和优化微信公众平台账号,涵盖了用户信息管理、内容创作与发布、互动策略及数据分析等方面。通过合理设置用户信息字段,如用户名、昵称、密码、真实姓名和性别等,确保账号的安全性和用户体验。同时,文章还介绍了如何利用微信公众平台的各项功能,提升用户参与度和品牌影响力。 ... [详细]
  • JavaScript XML操作实用工具类:XmlUtilsJS技巧与应用 ... [详细]
  • 在前文探讨了Spring如何为特定的bean选择合适的通知器后,本文将进一步深入分析Spring AOP框架中代理对象的生成机制。具体而言,我们将详细解析如何通过代理技术将通知器(Advisor)中包含的通知(Advice)应用到目标bean上,以实现切面编程的核心功能。 ... [详细]
  • 本文详细介绍了如何安全地手动卸载Exchange Server 2003,以确保系统的稳定性和数据的完整性。根据微软官方支持文档(https://support.microsoft.com/kb833396/zh-cn),在进行卸载操作前,需要特别注意备份重要数据,并遵循一系列严格的步骤,以避免对现有网络环境造成不利影响。此外,文章还提供了详细的故障排除指南,帮助管理员在遇到问题时能够迅速解决,确保整个卸载过程顺利进行。 ... [详细]
  • 从文本中全面提取所有URL链接
    本文探讨了一种高效的方法,用于从大量文本数据中全面提取所有URL链接。通过使用正则表达式和Python编程语言,该方法能够准确识别并提取出各种格式的URL,包括HTTP、HTTPS等常见协议。实验结果表明,该方法在处理大规模文本数据时具有较高的准确率和效率。 ... [详细]
author-avatar
手机用户2502858341
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有