1.写一个类继承TextView

  1. package com.example.tt;
  2. import android.content.Context;
  3. import android.graphics.Rect;
  4. import android.util.AttributeSet;
  5. import android.widget.TextView;
  6. public class ScrollingTextView extends TextView {
  7. public ScrollingTextView(Context context, AttributeSet attrs, int defStyle) {
  8. super(context, attrs, defStyle);
  9. }
  10. public ScrollingTextView(Context context, AttributeSet attrs) {
  11. super(context, attrs);
  12. }
  13. public ScrollingTextView(Context context) {
  14. super(context);
  15. }
  16. @Override
  17. protected void onFocusChanged(boolean focused, int direction, Rect previouslyFocusedRect) {
  18. if(focused)
  19. super.onFocusChanged(focused, direction, previouslyFocusedRect);
  20. }
  21. @Override
  22. public void onWindowFocusChanged(boolean focused) {
  23. if(focused)
  24. super.onWindowFocusChanged(focused);
  25. }
  26. @Override
  27. public boolean isFocused() {
  28. return true;
  29. }
  30. }

2.xml 中增加属性

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical"
  4. android:layout_width="fill_parent"
  5. android:layout_height="fill_parent"
  6. >
  7. <com.example.tt.ScrollingTextView
  8. android:layout_width="wrap_content"
  9. android:layout_height="wrap_content"
  10. android:layout_marginLeft="80dip"
  11. android:layout_marginBottom="25dip"
  12. android:textSize="25sp"
  13. android:singleLine="true"
  14. android:textColor="@android:color/black"
  15. android:ellipsize="marquee"
  16. android:focusable="true"
  17. android:marqueeRepeatLimit="marquee_forever"
  18. android:focusableInTouchMode="true"
  19. android:scrollHorizontally="true"
  20. android:text="这才是真正的文字跑马灯效果,文字移动速度,文字移动方向,文字移动的样式,动画等等……"
  21. android:background="#2FFFFFFF" />
  22. <Button
  23. android:id="@+id/button1"
  24. android:layout_width="wrap_content"
  25. android:layout_height="wrap_content"
  26. android:text="Button" />
  27. </LinearLayout>

3. 在activity中声明

    1. package com.example.tt;
    2. import android.os.Bundle;
    3. import android.app.Activity;
    4. import android.view.Menu;
    5. public class MainActivity extends Activity {
    6. @Override
    7. public void onCreate(Bundle savedInstanceState) {
    8. super.onCreate(savedInstanceState);
    9. setContentView(R.layout.activity_main);
    10. }
    11. }

TextView不用获取焦点也能实现跑马灯的更多相关文章

  1. 自定义TextView跑马灯

    本篇主要介绍TextView的可控制跑马灯效果实现. Android自带的TextView添加几个属性就可以实现跑马灯效果,大概是这样 android:ellipsize="marquee& ...

  2. 【Android】TextView跑马灯效果

    老规矩,先上图看效果. 说明 TextView的跑马灯效果也就是指当你只想让TextView单行显示,可是文本内容却又超过一行时,自动从左往右慢慢滑动显示的效果就叫跑马灯效果. 其实,TextView ...

  3. 跑马灯带你深入浅出TextView的源码世界

    一.背景 想必大家平时也没那么多时间是单独看源码,又或者只是单纯的看源码遇到问题还是不知道怎么从源码的角度解决. 但是大家平时开发过程中肯定会遇到这样或那样的小问题,通过百度.Google搜索都无果, ...

  4. Android:TextView文字跑马灯的效果实现

    解决TextView文字显示不全的问题. 简单设置跑马灯的效果: <TextView android:id="@+id/textView" android:layout_wi ...

  5. Android中TextView不获取焦点可以实现跑马灯的效果

    之前在网上找了很多关于TextView的跑马灯效果实现的例子,实现起来都存在一些问题,例如一种是完全重画一个跑马灯,还有就是只设置TextView的相关属性使其具有跑马灯的效果,总的来说这两种方法都是 ...

  6. ListView 中的TextView实现跑马灯效果

    案例:怎么样在一个ListView中含有TextView的item中实现字母滚动呢.这个在一些特定的场合经常用得到.如下图,当焦点位于某个item的时候其内容就自动滚动显示 要实现这样的效果,废话不多 ...

  7. Android成长日记-仿跑马灯的TextView

    在程序设计中有时候一行需要显示多个文字,这时候在Android中默认为分为两行显示,但是对于必须用一行显示的文字需要如何使用呢? ----------------------------------- ...

  8. Android:TextView 自动滚动(跑马灯) (转)

    Android:TextView 自动滚动(跑马灯)       TextView实现文字滚动需要以下几个要点: 1.文字长度长于可显示范围:android:singleLine="true ...

  9. TextView实现跑马灯效果

    网上有很多跑马灯的介绍,有很多跑马灯的代码.或许我的不是最好的,但是应该很容易明白的. 我们先来介绍一个跑马灯的代码 <LinearLayout xmlns:android="http ...

随机推荐

  1. [Jobdu] 题目1214:丑数

    题目描述: 把只包含因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含因子7.习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. 输入: 输 ...

  2. cocos2d-x开发记录:二,基本概念(骨骼动画)

    九,骨骼动画 1.骨骼动画vs Sprite sheets 你能使用sprite sheets 创建动画,它很快又容易.直到你意识到你的游戏需要大量的动画并且内存消耗越来越高,并且需要时间载入全部数据 ...

  3. [Mongodb] 借mongodb被入侵勒索事件,谈下Linux服务器端口安全问题

    一.缘由: 最近几天Mongodb勒索事件甚嚣尘上:由于对外网开放访问并且没有开启授权机制被删库.远程拖库.勒索.接着又曝出Elasticsearch被勒索事件,缘由一样,Elasticsearch服 ...

  4. linux 打包为zip压缩包

    [root@nb linux学习]# zip -r dir.zip dir文件夹/ file文件 adding: dir文件夹/ (stored %) adding: file文件 (deflated ...

  5. if else 的或(||)

    = "node01" ]; then ssh -p2222 root@.xx.xx.xxx else echo "hello world" #当$=='node ...

  6. java jvm perf

    http://www.oracle.com/technetwork/java/performance-138178.html http://www.oracle.com/technetwork/jav ...

  7. ny20 吝啬的国度

    吝啬的国度 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 在一个吝啬的国度里有N个城市,这N个城市间只有N-1条路把这个N个城市连接起来.现在,Tom在第S号城市,他有 ...

  8. ny511 移动小球

    移动小球 时间限制:1000 ms  |  内存限制:65535 KB 难度:2   描述 给你n个小球,从左到右编号依次为1,2,3,4,5,6.........n,并规定小球1的左边的球号为n,小 ...

  9. Oracle PLSQL Demo - 03.流程判断[IF ELEIF ELSE]

    declare v_job ) := 'Programmer'; v_sal number; begin if v_job = 'Programmer' then v_sal :; elsif v_j ...

  10. js 的登录验证

    $scope.startLogin = function () { console.log('loginTimeHelper:startLogin: ' + getCurrentTime()); ef ...