Hackfive 使用TextSwitcher和ImageSwitcher实现平滑过渡
1. 应用场景:
- 通过向左和向右的导航按钮浏览日期列表
- 在日期选择空间中改变日期
- 倒计时始终
- 新闻刚要
- 通 过 findViewById() 方 法 获 取 TextSwitcher 对 象 的 引 用switcher,当然也可以直接在代码中构造该对象
- 通过switcher.setFactory()方法指定TextSwitcher的View-Factory.
- 通过switcher.setInAnimation()方法设置换入动画效果
- 通过switcher.setOutAnimation()方法设置换出动画效果
TextSwitcher的工作原理是:首先通过ViewFactory创建两个用于在TextSwitcher中切换的视图,每当调用setText()方法时,TextSwitcher首先移除
public class MainActivity extends Activity {
private static final String[] TEXTS = { "First", "Second", "Third" };
private int mTextsPosition = 0;
private TextSwitcher mTextSwitcher;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mTextSwitcher = (TextSwitcher) findViewById(R.id.your_textview);
mTextSwitcher.setFactory(new ViewFactory() {
@Override
public View makeView() {
System.out.println("makeView");
TextView t = new TextView(MainActivity.this);
t.setGravity(Gravity.CENTER);
return t;
}
});
mTextSwitcher.setInAnimation(this, android.R.anim.fade_in);
mTextSwitcher.setOutAnimation(this, android.R.anim.fade_out);
onSwitchText(null);
}
public void onSwitchText(View v) {
mTextSwitcher.setText(TEXTS[mTextsPosition]);
setNextPosition();
}
private void setNextPosition() {
mTextsPosition = (mTextsPosition + 1) % TEXTS.length;
}
}
Hackfive 使用TextSwitcher和ImageSwitcher实现平滑过渡的更多相关文章
- android:为TextView添加样式、跑马灯、TextSwitcher和ImageSwitcher实现平滑过渡
一.样式 设置下划线: textView.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG);//下划线 textView.getPaint().setAnt ...
- 平滑过渡的战争迷雾(一) 原理:Warcraft3地形拼接算法
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9611887 作者:七十一雾央 新浪微博:http:/ ...
- Android实现真正的ViewPager【平滑过渡】+【循环滚动】!!!顺带还有【末页跳转】。
实现真正的ViewPager[平滑过渡]+[循环滚动]!!!顺带还有[末页跳转]. 首先呢, 我要对网上常见的3种ViewPager的循环滚动方法做个概述.急需看真正实现方法的同志请选择性忽略下面这一 ...
- 《C++游戏开发》笔记十三 平滑过渡的战争迷雾(一) 原理:Warcraft3地形拼接算法
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9611887 作者:七十一雾央 新浪微博:http:/ ...
- js实现网页全屏切换(平滑过渡),鼠标滚动切换
实现效果为页面平滑过渡全屏切换,点击导航和鼠标滚动都可以切换. 效果图: html代码: <!DOCTYPE html> <html> <head lang=" ...
- 【转】Android循环滚动广告条的完美实现,封装方便,平滑过渡,从网络加载图片,点击广告进入对应网址
Android循环滚动广告条的完美实现,封装方便,平滑过渡,从网络加载图片,点击广告进入对应网址 关注finddreams,一起分享,一起进步: http://blog.csdn.net/finddr ...
- CSS3实现页面的平滑过渡
这是文件的css,全部文件的话请到Github下载:点击这里 @charset "UTF-8"; @font-face {font-family: 'iconfont'; src: ...
- 《C++游戏开发》笔记十四 平滑过渡的战争迷雾(二) 实现:真正的迷雾来了
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9712321 作者:七十一雾央 新浪微博:http:/ ...
- jq解决a连接锚点平滑过渡
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...
随机推荐
- redis list结构
一个功能肯定有其应用场景: PUSH和POP操作,其实是队列的基本操作.Redis的list就是一个极其强大的队列系统.我们在哪些地方会用到队列呢?下面,我们说两个例子: a,评论系统 逛过微博的筒子 ...
- java二维数组求每行最大值,每列最小值,及输出数组主对角线上的元素
总结:完全搞不懂,行和列是怎么弄的,,,,, package com.c2; import java.util.Scanner; public class Oaa { public static vo ...
- 求 s=a+aa+ aaa+ aaaa +aaaaa+........的值,a是从键盘输入的,项数也为键盘输入
总结:这道题目.主要是那个位数,需要*10, while(i<f){ x+=y;//决定位数上的那个数 sum+=x//求和 y*10=y;//决定位数 } package com.b; imp ...
- Wireshark捕获非加密的数据包
启动监听模式 root@sch01ar:~# airmon-ng start wlan0 启动Wireshark工具 root@sch01ar:~# wireshark 选择接口,这里选择wlan0m ...
- python's twenty-first day for me 抽象类和接口类以及多态
归一化设计: 不管是哪一个类的对象,都调用同一个函数去完成相似的功能. class Alipay: def pay(self,money): print('使用支付宝支付了%s' % money) c ...
- temp4
- TEMP2
- VIM基本命令及自用配置
VIM基本命令 光标移动 G 最后一行 nG 移动到第n行 n回车 光标下移n行 gg 第一行 查找和替换 /word n 重复前一个查找操作 N 向上查找 :n1,n2s/word1/word2/g ...
- 【总结整理】webGIS学习thinkGIS(四)WebGIS中通过行列号来换算出多种瓦片的URL 之离线地
http://www.thinkgis.cn/topic/541a5319da8db186fd06e097 1.前言 在前面我花了两个篇幅来讲解行列号的获取,也解释了为什么要获取行列号.在这一章,我将 ...
- Linux日志文件分析
---恢复内容开始--- 日志保存位置 默认 var/log目录下 主要日志文件 内核及公共消息日志:message 计划任务日志:cron 系统殷桃日志:demsg 邮件系统日志:maillog 用 ...