本文转载https://xwc2013.iteye.com/blog/1976051

今天看到了一种文字翻滚的效果,感觉非常实用。所以就自己试着做出了这种效果,现在把它分享给大家!

首先在res目录下新建anim文件夹,再在其中分别新建push_up_in.xml和push_up_out.xml 两个文件,具体如下:

push_up_in.xml  文字进入的效果 时长设置为0.5秒

<?xml version="1.0" encoding="utf-8"?>
  <set xmlns:android="http://schemas.android.com/apk/res/android">
  <translate android:fromYDelta="100%p" android:toYDelta="0" android:duration="500"/>
  <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="500" />
  </set>

push_up_out.xml  文字淡出的效果 设置动画时长 duration

<?xml version="1.0" encoding="utf-8"?>
  <set xmlns:android="http://schemas.android.com/apk/res/android">
  <translate android:fromYDelta="0" android:toYDelta="-100%p" android:duration="500"/>
   <alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="500" />
  </set>

如果要实现 文字的不停的向上翻滚的效果,那么这时我们可以使用使用到ViewFlipper,用它把我们希望显示的内容包裹起来。具体实现代码如下:

  main.xml

<?xml version="1.0" encoding="utf-8"?>
  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:orientation="vertical" >   <TextView
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:text="@string/hello" />   <ViewFlipper
  android:id="@+id/viewfli"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:background="#ffffff">
  </ViewFlipper>   </LinearLayout>

TextViewAmonActivity.java

package com.taoblog; 

  import java.util.ArrayList;
  import java.util.List;   import android.app.Activity;
  import android.os.Bundle;
  import android.widget.TextView;
  import android.widget.ViewFlipper;   /**
  * @Description:TODO 实现文字的上下翻滚的效果
  */   public class TextViewAmonActivity extends Activity {
  private ViewFlipper viewfli;
  @Override
  public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);   init();   }   /**
  * @Description: 对UI进行初始化操作
  */
 private void init()
 {
viewfli = (ViewFlipper) super.findViewById(R.id.viewfli); // 为ViewFlipper设置内容
List<TextView> list = this.getData();
int size = list.size();
for(int i = 0; i < size; i++)
{
viewfli.addView(list.get(i));
} // 设置文字in/out的动画效果
viewfli.setInAnimation(this, R.anim.push_up_in);
viewfli.setOutAnimation(this, R.anim.push_up_out);
viewfli.startFlipping();
} /**
* @Description: 要显示的文字信息
* 在实际开发中,此方法可为对服务器返回数据的解析操作 * @return list
*/
private List<TextView> getData()
{
List<TextView> list = new ArrayList<TextView>(); for(int i = 0; i < 5; i++)
{
TextView tv = (TextView) new TextView(this);
tv.setText("这是测试用的第 "+i+" 行测试数据:");
list.add(tv);
} return list;
}
}

至此,功能全部实现!

亲测可用!!

 

Android - 文字向上翻滚效果的实现的更多相关文章

  1. 原生js实现文字无缝向上滚动效果

    在网上查找到了一个实现文字无缝向上滚动效果的源码,结果发现运行有问题,于是就稍加改动,实现了js无缝向上滚动的效果. <script> window.onload = roll(50); ...

  2. android按钮被点击文字颜色变化效果

    有的时候做应用需要点击按钮时文字颜色也跟着变,松开后又还原,目前发现两种解决方案:第一用图片,如果出现的地方比较多,那么图片的量就相当可观:第二,也就是本文讲到的.废话少说,先贴图片,再上代码. 正常 ...

  3. Android开发:文本控件详解——TextView(二)文字跑马灯效果实现

    一.需要使用的属性: 1.android:ellipsize 作用:若文字过长,控制该控件如何显示. 对于同样的文字“Android开发:文本控件详解——TextView(二)文字跑马灯效果实现”,不 ...

  4. android文字阴影效果(转)

    关于android文字阴影,共有四个属性可以设置: android:shadowColor :阴影颜色 android:shadowDx :阴影x方向位移 android:shadowDy :阴影y方 ...

  5. 【转】(转)【Android】Paint的效果研究

    转自:http://wpf814533631.iteye.com/blog/1847661 (转)[Android]Paint的效果研究 博客分类: android   在Paint中有很多的属性可以 ...

  6. android文字阴影效果设置

    <TextView android:id="@+id/tvText1" android:layout_width="wrap_content" andro ...

  7. Android自定义类似ProgressDialog效果的Dialog

    Android自定义类似ProgressDialog效果的Dialog. 方法如下: 1.首先准备两张自己要定义成哪样子的效果的图片和背景图片(也可以不要背景). 如我要的效果: 2.定义loadin ...

  8. 解决Android Graphical Layout 界面效果不显示

    解决Android Graphical Layout 界面效果不显示 qq463431476

  9. android 的闪屏效果

    android的闪屏效果,就是我们刚开始启动应用的时候弹出的界面或者动画,过2秒之后自动的跳转到主界面. 其实,实现这个效果很简单,使用Handler对象的postDelayed方法就可以实现.在这个 ...

随机推荐

  1. Python进阶:设计模式之迭代器模式

    在软件开发领域中,人们经常会用到这一个概念——“设计模式”(design pattern),它是一种针对软件设计的共性问题而提出的解决方案.在一本圣经级的书籍<设计模式:可复用面向对象软件的基础 ...

  2. WebSocket协议详解与c++&c#实现

    摘要: 随着手机游戏.H5游戏以及微信小游戏的普及,越来越多的客户端-服务器端的通讯采用websocket协议.Websocket协议是全双工的.基于数据帧的.建立在tcp之上的长连接协议.Webso ...

  3. 卷积神经网络之LeNet

    开局一张图,内容全靠编. 上图引用自 [卷积神经网络-进化史]从LeNet到AlexNet. 目前常用的卷积神经网络 深度学习现在是百花齐放,各种网络结构层出不穷,计划梳理下各个常用的卷积神经网络结构 ...

  4. jQuery AJAX与jQuery事件的分析讲解

    jQuery 本身即是为事件处理而特别设计的,jQuery 事件处理方法是 jQuery 中的核心函数. $(function() { ... }); 是如下格式的缩写: ? 1 $(document ...

  5. openlayers4 入门开发系列之船讯篇

    前言 openlayers4 官网的 api 文档介绍地址 openlayers4 api,里面详细的介绍 openlayers4 各个类的介绍,还有就是在线例子:openlayers4 官网在线例子 ...

  6. ionic cordova build android error: commamd failed with exit code eacces

    问题: 电脑的gradle版本为Gradle 5.0,然而 因为 添加的android 平台为6.3.0 gradle 是 4.1版本 电脑已存在 gradle的情况下,add platform 成功 ...

  7. Linux 操作系统基础

    list : ls 目录: 文件,路径映射. ls : -l : lang 长格式, 显示完整信息. 文件类型: -: 普通文件(f) d: 目录文件 b: 块设备文件(block) c: 字块设备文 ...

  8. wampserver一系列问题总结

    总结下之前wampserver集成包安装的问题. windows sever 2008 R2 64,wampserver3.1.4_x64. 在安装的过程,有选择默认浏览器和编辑器,这些安装步骤简单, ...

  9. 最短路问题之Dijkstra算法

    题目: 在上一篇博客的基础上,这是另一种方法求最短路径的问题. Dijkstra(迪杰斯特拉)算法:找到最短距离已经确定的点,从它出发更新相邻顶点的最短距离.此后不再关心前面已经确定的“最短距离已经确 ...

  10. C#委托、事件、线程

    这是几个简单的例子,但是实际的开发中委托还还只在反射时用到过,事件的话只自己做了一次,并且还是特意去用的 ,实际上可以不用.线程的话,因为需要,所以用的会多点,这里主要是WS上的线程. 委托 在前面的 ...