垂直跑马灯水平跑马灯
字体滚动效果
最近在项目中遇见了字体水平滚动&字体垂直滚动效果,借此与大家分享
《跑马灯效果》
2、代码实现:
<TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:ellipsize="marquee"android:focusable="true"android:focusableInTouchMode="true"android:marqueeRepeatLimit="marquee_forever"android:singleLine="true"android:textSize="30sp"android:textColor="@android:color/black"android:text="过去对错已不再重要"/>
《垂直切换文字效果图》2、代码实现:
public class VerticalSlidingView extends TextSwitcher implements ViewSwitcher.ViewFactory {private static final String[] textContents = new String[]{"日照香炉生紫烟","遥看瀑布挂前川","飞流直下三千尺","疑似迎合落九天"};public static final int MSG_START_SLIP = 1;private Handler mHandler;private int num;private static final int TIME = 2 * 1000;private Handler.Callback mCallBack = new Handler.Callback(){@Overridepublic boolean handleMessage(Message message) {switch (message.what){case MSG_START_SLIP:mHandler.sendEmptyMessageDelayed(MSG_START_SLIP , TIME);if(num <= textContents.length -1) {setText(textContents[num++]);}else{num = 0;}break;}return false;}};public VerticalSlidingView(Context context){this(context,null);}public VerticalSlidingView(Context context, AttributeSet attrs) {super(context, attrs);mHandler = new Handler(mCallBack);initView();}@Overridepublic View makeView() {TextView textView = (TextView) LayoutInflater.from(getContext()).inflate(R.layout.swith_text_view , null);return textView;}private void initView(){setFactory(this);/*TextView textView1 = new TextView(getContext());ViewGroup.LayoutParams params1 = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT , ViewGroup.LayoutParams.WRAP_CONTENT);textView1.setTextSize(20);textView1.setTextColor(Color.RED);textView1.setLayoutParams(params1);addView(textView1 , 0);TextView textView2 = new TextView(getContext());ViewGroup.LayoutParams params2 = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT , ViewGroup.LayoutParams.WRAP_CONTENT);textView2.setTextSize(30);textView2.setTextColor(Color.BLACK);textView2.setLayoutParams(params2);addView(textView2 , 1);*/Animation animationIn = loadAnimation(getContext() , R.anim.slide_in_top);Animation animationOut = AnimationUtils.loadAnimation(getContext() , R.anim.slide_out_top);setInAnimation(animationIn);setOutAnimation(animationOut);mHandler.sendEmptyMessageDelayed(MSG_START_SLIP,TIME);if(num <= textContents.length - 1) {setText(textContents[num++]);}else{num = 0;}}
}
***************************************************************************
《垂直切换字体颜色大小改变效果图》代码上面也有我就不复制了,直接上步骤:1、首先不设置setFactory,这样makeView()这个方法也就无法调用了,故makeView可以return null;2、一定要初始化两个TextView不然系统会报错,然后addView(view , index)【index 通常是0,1】3、如果是要改变TextView切换的margin则修改
LinearLayout.LayoutParams params1 = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT , LinearLayout.LayoutParams.WRAP_CONTENT);params1.setMargins();
4、如果在更新数据时发现布局混乱了,则可以试用这个方法:removeAllView()然后再addView()【在更新地方设置】这里我一个疑问,因为每次文字切换时,都会调用getNextView按理说这里可以修改下一个展示View的布局格式,但是我尝试了不行。不知各位是否有idea,也请你们告诉我,互相学习!!!
垂直跑马灯水平跑马灯相关推荐
- android上垂直跑马灯,android textview 垂直滚动and水平跑马灯
垂直滚动的话就挺简单的.当然了不是自动的垂直滚动.如果是自动的垂直滚动的话还需要自定义.所以如果有需求需要textview 可以垂直滚动的话,那你来这里就对了. 直接贴 代码.就是这么任性. andr ...
- 单行文字垂直/水平跑马灯效果
需求描述 接到的需求是这样的:跑马灯效果 一次展示一行文字 循环滚动 文字滚动到视野中停留一秒后滚出. 静态效果如下图,文字从下往上或者从右往左滚动,滚动到此位置时停留一秒(不会传动图... 网络上有 ...
- 兄弟们,快醒醒,我们的跑马灯不跑了。
销售GG在工作群里:"弟兄们,快醒醒,咱现场的跑马灯不跑了." 还在加班的程序猿:"已经查过了,程序没Bug." 带娃玩的硬件攻城狮:"硬件没问题,这 ...
- 晨跑、午后跑和夜跑对身体的影响及优缺点
一天跑两次步,晨跑与夜跑,对身体有好处的.好处如下: 1.养成易于燃脂的好体质 有的人容易发胖的原因就在于平日运动不足,肌力下降,与其此消彼长的脂肪,更是肆无忌惮地积聚起来. 一般而言,跑步是一项有氧 ...
- 晚上跑步好吗?晨跑与夜跑利弊分析
健身房里跑步机上一沉不变的频率空乏无味,白天的城市街道车水马龙.人潮拥挤,于是万物尚未苏醒的清晨.伴随日落而回归平静的夜晚就成了跑步爱好者们最为钟爱的"活动"时间.无论是对于上班族 ...
- Mycat实现垂直拆分与水平拆分
垂直拆分(分库) 一个数据库由很多表的构成,每个表对应着不同的业务,垂直切分是指按照业务将表进行分类, 分布到不同 的数据库上面,这样也就将数据或者说压力分担到不同的库上面,如下图: 系统被切分成:用 ...
- 任务管理 linux指令qsub,Linux_前一个投的任务跑完再跑另一个任务_qsub_-hold_jid
Linux_前一个投的任务跑完再跑另一个任务_qsub_-hold_jid perl program_1.pl input_1.file output_1.file perl program_2.pl ...
- 数据库的垂直划分和水平划分
数据库的水平划分和垂直划分很早以前就接触了,只是没有实践,没有什么体会,只有最近两年才有接触,今天也和大家聊聊. 垂直划分 按照功能划分,把数据分别放到不同的数据库和服务器. 当一个网站开始刚刚创建时 ...
- ES分布式机制的透明性,垂直扩容和水平扩容,数据rebalance,master节点,节点平等的分布式架构,shard和replica机制(学习)
1.Elasticsearch对复杂分布式机制的透明影藏特性 Elasticsearch是一套分布式的系统,分布式是为了应对大数据量影藏了复杂的分布式机制. 分片机制(我们可以随随便便就将一些docu ...
- 数据切分 垂直切分、垂直拆分与水平拆分的优缺点
数据切分 垂直切分 关于数据库的水平切分和垂直切分的一些概念垂直拆分垂直拆分就是要把表按模块划分到不同数据库表中(当然原则还是不破坏第三范式),这种拆分在大型网站的演变过程中是很常见的.当一个网站还在 ...
最新文章
- 大学毕业标语计算机学院,大学毕业横幅标语创意
- java logout_Java Core.logout方法代码示例
- node.js之打包工具webpack
- k8s 手动恢复redis 集群_二进制手动部署k8s-1.14高可用集群(二、集群部署)
- 从Docker在Linux和Windows下的区别简单理解Docker的层次结构
- 李开复:无人驾驶必须一步到位,没有所谓的人机协同
- windows下安装sqlmap 详细教程
- 【Axure】Axure RP 9 下载、短期试用破解安装和汉化步骤 —— 可供安装参考,短期试用,目前授权码已逐渐失效
- php 下载技巧,PHP 使用技巧集
- 如何一个月左右拿下PAT甲级(浙大机试)满分
- C语言--指针实现字符串逆序输出
- 计算机显示器的分辨率可以调节吗,电脑分辨率何如调?电脑无法调整屏幕分辨率怎么办?...
- mysql安装教程_mysql 5.5 安装配置方法图文教程
- 建立自己的机器人手臂-组装
- 彩色图像自动色阶调整和自动对比度调整
- 什么是Serv-U,什么是servu,Serv-U,servu
- 【科研技巧】PPT如何导出1000dpi的图片
- 招聘:IT-互联网相关职位。如:手机客户端、iphone\ios\、PHP 开发工程师,产品经理...
- 二分查找,返回第一次出现的位置
- adb push与adb pull