API Demos 2.3 学习笔记 (6) Text>Marquee

更多精彩内容,请点击阅读:《API Demos 2.3 学习笔记》


在TextView及其子类控件中,当文本内容太长,超过控件长度时,默认情况下,无法完全显示文本内容。此时,通过在xml布局文件中设置控件的android:ellipsize属性,可以将无法显示的部分用省略号表示,并放在文本的起始,中间或者结束位置;还可以跑马灯的方式来显示文本(即文本控件获得焦点时,文本会进行滚动显示)。具体设置方法如下所示:
1、默认不处理
android:singleLine="true"
android:ellipsize="none"

2、省略号放在起始
android:singleLine="true"
android:ellipsize="start"

3、省略号放在中间
android:singleLine="true"
android:ellipsize="middle"

4、省略号放在结束
android:singleLine="true"
android:ellipsize="end"

5、跑马灯效果
android:focusable="true"
android:focusableInTouchMode="true"
android:singleLine="true"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"

注:1、android:singleLine="true"表示单行显示。
2、在设置跑马灯效果时候,最好加上android:focusable="true"和android:focusableInTouchMode="true",分别表示可以获得焦点,和在触摸模式下可以获得焦点。
3、android:marqueeRepeatLimit表示跑马灯效果重复显示的次数,只能取值marquee_forever和正整数。取值marquee_forever时,表示跑马灯效果一直重复显示。


下面我们进行实例代码解析:

res-value-string.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="marquee_default">This use the default marquee animation limit of 3</string>
    <string name="marquee_once">This will run the marquee animation once</string>
    <string name="marquee_forever">This will run the marquee animation forever</string>
</resources>

res-layout-marquee.xml
<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent" 
    android:layout_height="match_parent">
    
    <!-- 默认跑马灯效果 -->
    <Button
        android:layout_width="150dip" 
        android:layout_height="wrap_content"
        android:text="@string/marquee_default"
        android:singleLine="true"  
        android:ellipsize="marquee"/> 
    
    <!-- 跑马灯效果,重复播放一次 -->
    <Button
        android:layout_width="150dip" 
        android:layout_height="wrap_content"
        android:text="@string/marquee_once"
        android:singleLine="true"
        android:ellipsize="marquee"
        android:marqueeRepeatLimit="1"/>

     <!-- 跑马灯效果,一直重复播放 -->       
    <Button
        android:layout_width="150dip" 
        android:layout_height="wrap_content"
        android:text="@string/marquee_forever"      
        android:singleLine="true"
        android:ellipsize="marquee"
        android:marqueeRepeatLimit="marquee_forever"/>  
           
</LinearLayout>

src-com.example.android.apis.text-Marquee.java
package com.example.android.apis.text;

import com.example.android.apis.R;

import android.app.Activity;
import android.os.Bundle;

public class Marquee extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        
        //将marquee布局文件渲染出一个View对象,并作为Activity的默认View
        setContentView(R.layout.marquee);
    }
}

效果预览:

API Demos 2.3 学习笔记 (6) Text&gt;Marquee
                            API Demos 2.3 学习笔记 (6) Text&gt;Marquee

更多相关文章
  • 使用 Windows 集成安全性访问 SQL Server 如果您的应用程序运行在基于 Windows 的 Intranet 上,则也许可以将 Windows 集成身份验证用于数据库访问.集成安全性使用在操作系统线程上建立的当前 Windows 标识来访问 SQL Server 数据库.然后,您可以 ...
  • 我们知道Oracle的统计信息将严重影响CBO对执行计划的选择,针对不同大小的表制定收集规则并且定期执行是非常重要的.Oracle通过如下脚本即可收集统计信息: BEGIN DBMS_STATS.GATHER_TABLE_STATS(ownname =>'ZBDBA', tabname =&g ...
  • 信息来源:至尊宝的成长之路比如发现一处可XSS地方:<script>alert(不管怎么样弹出就好)</script>自己弄个偷cookie的文件.目的是让其他浏览者去浏览我们设计好的陷阱<script>document.location=http://URL.c ...
  • 网页加密和破解之&#106avascript 最近闲着无事,正好写点东西,为了让更多的人能理解,我就从最简单的网页讲起好了!我们先从最简单的&#106avascript加密页开始,在网上你可能会碰到很多用&#106avascript编的要求你输入用户和密码的网页,没有密码就不 ...
  • Large Data Types(大数据类型) 大数据类型的bin可以存储大量的对象集合.对象的类型可以是Integer/String/Map/List.Aerospike的单个记录可以包含许多这样的bin,这样的bin允许在单独的记录中包含大量的数据,其限制基于存储能力,记录没有最大值限制. Ae ...
  • 今天下午休息的时候又被扔给一项任务:把全国的街道数据导入街道表.但是他们扔给我的SQL脚本是从网上down的一个,跟平台这边的数据库设计的完全不一样. 当时的思路是:先把扔给我的脚本在本地生成一个表,然后选出要的数据,批量插入到开发库所在服务器的表. 然后,按照这个思路做了个测试: INSERT I ...
一周排行
  • 显然,从访客踏进美国在线(AOL)纽约总部大堂的那一刻起,这个即将从时代华纳(Time Warner)拆分出来的互联网部门仍在运作中. 前台的橙绿色和淡蓝色似乎放错了位置--更多的是阿密的时尚而非纽约的酷.铝外壳的i ...
  • Chmod可以更改各种文件的权限,有两种更改的方式:1使用数字的方式进行更改rwx分别使用421来进行代替 2.使用字母的方式进行更改 u代表所有者,g该表组用户,o代表其他的用户,a代表ugo三者.使用=+-进行权 ...
  • 晨报讯(记者 陈琼)为了避免沦为"线下试衣间",传统零售商电商化已是大势所趋,继银泰百货牵手支付宝之后,华联商厦购物中心也加入到O2O的阵营中来,这也是首个试水O2O模式的购物中心.日前有消息称, ...
  • http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html 以这篇文章为例,一般都是用户在第三方app中登录时,由第三方去申请资源服务器的登录权限等.即用户在云打印的a ...
  • 易网科技讯 7月17日消息,据国外媒体报道,银湖资本与高捷资本两大私募的创始合伙人罗杰·麦克纳米(Roger McNamee)周三赞扬了苹果与IBM日前达成的合作协议,称此举证明科技公司可以不再单纯依赖消费业务或单纯 ...
  • 前一段时间帮一个朋友的朋友恢复了一个损坏的dmp文件,大概100多个G,记录一下恢复过程并简单总结一下 一.描述 这个dmp文件是从一个Oracle 9i的数据库上exp出来的,在导入Oracle 11g版本的时候, ...
  • 1.单行文本垂直居中的方法:将line-height设为和所在元素的高度一样. 例如,使文字在div中水平和垂直居中,假设你的DIV是高度100PX,宽度是1PX,那你这样写,你的文字就会水平垂直居中:<div ...
  • 一. ODBC原理    ODBC 是Open Database Connect 即开放数据库互连的简称,它是由Microsoft 公司于1991 年提出的一个用于访问数据库的统一界面标准,是应用程序和数据库系统之间 ...
  • GSM Security and Encryption by David Margrave, George Mason University 1.0 Introduction The motivations for ...
  • 易网科技讯 8月12日消息,易网科技从中国电信获悉,该公司将从8月13日起启动第三次全国宽带大提速,全面推广100M宽带.此轮提速之后,中国家庭将逐步迈入百兆时代.据了解,在过去15年里,中国电信曾主导过两次大的宽带 ...