在Android中要显示跑马灯是比较容易的,只要设置2个属性就可以了:
android:singleLine="true"
android:ellipsize="marquee"
但
是要显示跑马灯该View必需是可以取得焦点的,只有在取得焦点的情况下跑马灯才会出现.
如果是组合View的情况下就有问题了,
如下一个组合View:
上面示例中2个TextView组合为一个View,由于设置了LinearLayout为focusable而TextView就没法取得焦点了,这样
这个TextView的跑马灯效果就显示不出来,就算你也设置TextView的 android:focusable=
"true"
也是
没用的. 这个时候就要使用addStatesFromChildren 这个属性了,在LinearLayout中设置这个属性,然后设置TextView的focusable=
"true"
就可以了.关于
addStatesFromChildren的说明:
Sets
whether
this
ViewGroup's drawable
states
also include its children's drawable
states.
可以正常显示的代码:
<!-- <br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><?
xml version="1.0" encoding="utf-8"
?>
<
LinearLayout
xmlns:android
="http://schemas.android.com/apk/res/android"
android:orientation
="vertical"
android:gravity
="center_vertical"
android:background
="@drawable/zixun_background"
android:layout_width
="fill_parent"
android:addStatesFromChildren
="true"
android:layout_height
="50px"
>
<
TextView
android:id
="@+id/info_text"
android:focusable
="true"
android:layout_width
="fill_parent"
android:layout_height
="wrap_content"
android:text
=" "
android:textColor
="@color/black"
android:singleLine
="true"
android:ellipsize
="marquee"
android:marqueeRepeatLimit
="3"
android:textSize
="18sp"
/>
<
TextView
android:id
="@+id/date_text"
android:layout_width
="fill_parent"
android:layout_height
="wrap_content"
android:layout_gravity
="bottom"
android:textColor
="@color/gray"
android:text
="2010/05/28"
android:textSize
="12sp"
/>
</
LinearLayout
>
分享到:
相关推荐
跑马灯是一种常见的电子显示效果,常用于...在实际操作中,还需要对程序进行充分的测试和优化,确保跑马灯效果的稳定和流畅。通过这个项目,不仅可以锻炼嵌入式系统的编程技能,也能深入理解实时控制系统的运行机制。
跑马灯程序是一种常见的电子工程实践,特别是在数字信号处理(DSP)领域,它常用于教学和实验,以帮助初学者理解基本的定时器中断和控制序列。标题中的“DSP跑马灯奇数”可能指的是一个特定的设计,它可能强调了在...
在本项目中,我们将利用其强大的I/O端口和中断处理能力,实现通过物理按键控制跑马灯(通常由LED构成)的开启和关闭。 跑马灯,又称为流水灯,是电子工程中的一个经典示例,通常由一组串联或并联的LED组成,它们...
在跑马灯程序中,我们将选择其中几个端口作为LED的驱动端口,通过设置端口的数据方向寄存器(DDR)和数据输出寄存器(PORT)来控制LED的亮灭。 定时器配置:定时器是实现跑马灯时序的关键。通常我们会选择一个...
vhdl跑马灯 适合初学者同学...流水灯的制作
在跑马灯效果中,QLabel通常被用来作为文字滚动的载体,通过改变其几何形状和文字位置来模拟跑马灯效果。 2. **QTimer**:Qt的定时器类QTimer是实现动态效果的关键。通过定时触发特定事件(如更新QLabel的位置),...
在这个LabVIEW项目中,"labview 跑马灯"实现了这个功能,允许用户自定义跑马灯的内容,包括汉字,使得其更具灵活性和实用性。 LabVIEW中的跑马灯实现主要涉及以下几个知识点: 1. **字符串操作**:程序首先需要...
跑马灯实验是一种常见的硬件入门实践,主要用于演示和学习微控制器(MCU)对输入输出端口(GPIO)的控制。在这个实验中,我们将重点讨论如何通过编程实现GPIO口的配置,以控制LED灯的顺序闪烁,从而形成跑马灯的效果...
- 为了适应不同分辨率和设备,可以将跑马灯效果与CanvasScaler配合使用,确保在不同屏幕尺寸下效果一致。 在"RunLight"压缩包中,你应该能找到一个预设的Unity项目,包含了实现上述步骤的场景和脚本。你可以根据...
"博途V16跑马灯程序"是一个基于西门子SIMATIC S7-1200 PLC(可编程逻辑控制器)的编程示例,它主要用于教育和实践目的,特别是对于初学者。跑马灯是一种常见的电气工程示例,通过依次点亮或熄灭一串LED灯来模拟马在...
- **资源管理**:利用3.x的资源管理系统,可以更好地管理和加载跑马灯相关的图片、字体等资源,保证游戏运行流畅。 5. **优化与扩展**: - **多语言支持**:为了适应不同地区的玩家,跑马灯功能应支持多语言。...
1. **Android权限**:在AndroidManifest.xml文件中,可能需要声明`INTERNET`权限,如果跑马灯涉及到网络数据的获取和展示。 2. **自定义View**:创建一个继承自`View`的类,重写`onDraw()`方法,用于绘制跑马灯的...
1. `android:singleLine="true"` 和 `android:ellipsize="marquee"` 属性需要设置在XML布局中,以开启跑马灯效果。 2. 跑马灯效果只有在TextView获得焦点时才会启动,可以使用`requestFocus()`方法手动获取焦点。 3....
本项目“基于FPGA的Verilog HDL按键跑马灯”是电子设计的一个经典实例,它结合了硬件描述语言Verilog HDL、FPGA硬件平台以及用户交互元素,如按键和LED显示,提供了对基本数字逻辑和控制流程的实践理解。 首先,...
在嵌入式系统领域,尤其是在STM32微控制器上实现跑马灯功能,是学习单片机编程和硬件控制的基础练习。 STM32是一款基于ARM Cortex-M内核的32位微控制器,由意法半导体公司(STMicroelectronics)生产。它拥有高性能...
为了实现跑马灯效果,`MarqueeView`需要扩展其父类的功能,添加自定义的属性和方法。 1. **属性**: - `contentLabel`:通常是一个`UILabel`,用于显示跑马灯中的文本内容。 - `contentColor`:设置跑马灯内容的...
在实际开发过程中,需要进行充分的测试,包括速度控制的准确性、长文本的处理、不同设备的兼容性等方面,确保跑马灯功能的稳定性和用户体验。 通过以上步骤,我们可以构建出一个功能强大、可控制速度、能处理长...
跑马灯效果是一种常见的网页动态展示技术,常用于新闻标题滚动、广告轮播等场景,为页面增添动感和视觉吸引力。在本实例中,我们关注的是一个实现"实用上下左右滚动的跑马灯JS"的代码。这个效果是通过JavaScript语言...
跑马灯通常基于定时器和移位寄存器实现。定时器用于设定闪烁的频率,而移位寄存器则存储LED的状态,并按照一定的顺序进行数据移位,从而使得LED灯依次亮起,形成“跑动”的视觉效果。这里的8位跑马灯意味着有8个LED...
自己用js实现的一个跑马灯控件,通过传入参数对象实例化它,然后启动即可。支持的参数有 div对象(id名称或dom对象都可以,已经在内部作了处理) 宽度(可选) 高度(可选) 内容(由数组实现,数组里存放任何html...