1. 程式人生 > >TextView中的跑馬燈不動

TextView中的跑馬燈不動

今天用到AndroidTextView的跑馬燈效果,在原專案的Layout佈局中加了一個跑馬燈文字,奇了怪了,文字能出現就是不給我跑起來,又重建了個專案測試,它又能跑了!活見鬼了!!!!

1.下面是測試項中的佈局檔案:

  1. <spanstyle="font-size:14px;"><RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
  2.     xmlns:tools="http://schemas.android.com/tools"
  3.     android:layout_width="match_parent"
  4.     android:layout_height="match_parent">
  5.     <TextView
  6.         android:id="@+id/indexgallerytv"
  7.         android:layout_width="200dip"
  8.         android:layout_height="wrap_content"
  9.         android:layout_centerHorizontal="true"
  10.         android:layout_centerVertical="true"
  11.         android:ellipsize
    ="marquee"
  12.         android:focusable="true"
  13.         android:focusableInTouchMode="true"
  14.         android:gravity="left|center"
  15.         android:marqueeRepeatLimit="marquee_forever"
  16.         android:paddingLeft="20dip"
  17.         android:paddingRight="20dip"
  18.         android:textColor="#000000"
  19.         android:scrollHorizontally
    ="true"
  20.         android:text="多少次迎著冷眼與嘲笑,從沒有放棄過心中的理想,一剎那恍惚,若有所失的感覺,不知不覺已變淡,心裡愛"
  21.         android:textSize="20dip"/>
  22. </RelativeLayout></span>

2.下面是加到的專案的佈局檔案中:(此處為錯誤的佈局;下面貼有正確的佈局)

  1. <RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
  2.     xmlns:tools="http://schemas.android.com/tools"
  3.     android:layout_width="match_parent"
  4.     android:layout_height="match_parent"
  5.     android:background="#ffffff">
  6.     <include
  7.         android:id="@+id/title"
  8.         android:layout_alignParentTop="true"
  9.         layout="@layout/main_title"/>
  10.     <LinearLayout
  11.         android:id="@+id/top_layout"
  12.         android:layout_width="fill_parent"
  13.         android:layout_height="120dip"
  14.         android:layout_below="@+id/title"
  15.         android:layout_margin="5dip"
  16.         android:background="@drawable/integral"
  17.         android:text="@string/hello_world"
  18.         tools:context=".MainActivity"/>
  19.     <GridView
  20.         android:id="@+id/grid_view"
  21.         android:layout_width="fill_parent"
  22.         android:layout_height="wrap_content"
  23.         android:layout_below="@+id/top_layout"
  24.         android:layout_marginLeft="1dip"
  25.         android:layout_marginRight="1dip"
  26.         android:cacheColorHint="#00000000"
  27.         android:columnWidth="5dip"
  28.         android:numColumns="3">
  29.     </GridView>
  30.    <TextView
  31.         android:id="@+id/indexgallerytv"
  32.         android:layout_width="200dip"
  33.         android:layout_height="wrap_content"
  34.        android:layout_alignParentBottom="true"
  35.         android:ellipsize="marquee"
  36.         android:focusable="true"
  37.         android:focusableInTouchMode="true"
  38.         android:gravity="left|center"
  39.         android:marqueeRepeatLimit="marquee_forever"
  40.         android:paddingLeft="20dip"
  41.         android:paddingRight="20dip"
  42.         android:textColor="#000000"
  43.         android:scrollHorizontally="true"
  44.         android:text="多少次迎著冷眼與嘲笑,從沒有放棄過心中的理想,一剎那恍惚,若有所失的感覺,不知不覺已變淡,心裡愛"
  45.         android:textSize="20dip"/>
  46. </RelativeLayout>

3.後來網上查了下  巴士上面有人給了一個Demo,以上的問題主要是TextView不能獲取焦點,不能跑起來,現在重寫一下TextView中的方法,讓它不獲取焦點一樣也可以跑起來

  1. package com.jun.widget;  
  2. import android.content.Context;  
  3. import android.graphics.Rect;  
  4. import android.util.AttributeSet;  
  5. import android.widget.TextView;  
  6. publicclass MarqueeText extends TextView {  
  7.     public MarqueeText(Context con) {  
  8.       super(con);  
  9.     }  
  10.     public MarqueeText(Context context, AttributeSet attrs) {  
  11.       super(context, attrs);  
  12.     }  
  13.     public MarqueeText(Context context, AttributeSet attrs, int defStyle) {  
  14.       super(context, attrs, defStyle);  
  15.     }  
  16.     @Override
  17.     publicboolean isFocused() {  
  18.     returntrue;  
  19.     }  
  20.     @Override
  21.     protectedvoid onFocusChanged(boolean focused, int direction,  
  22.        Rect previouslyFocusedRect) {    
  23.     }  
  24.     }  

4.我專案中的佈局:

  1. <RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
  2.     xmlns:tools="http://schemas.android.com/tools"
  3.     android:layout_width="match_parent"
  4.     android:layout_height="match_parent"
  5.     android:background="#ffffff">
  6.     <include
  7.         android:id="@+id/title"
  8.         android:layout_alignParentTop="true"
  9.         layout="@layout/main_title"/>
  10.     <LinearLayout
  11.         android:id="@+id/top_layout"
  12.         android:layout_width="fill_parent"
  13.         android:layout_height="120dip"
  14.         android:layout_below="@+id/title"
  15.         android:layout_margin="5dip"
  16.         android:background="@drawable/integral"
  17.         android:text="@string/hello_world"
  18.         tools:context=".MainActivity">
  19.     </LinearLayout>
  20.     <GridView
  21.         android:id="@+id/grid_view"
  22.         android:layout_width="fill_parent"
  23. 相關推薦

    TextView馬燈

    今天用到AndroidTextView的跑馬燈效果,在原專案的Layout佈局中加了一個跑馬燈文字,奇了怪了,文字能出現就是不給我跑起來,又重建了個專案測試,它又能跑了!活見鬼了!!!! 1.下面是測試項中的佈局檔案: <spanstyle="fo

    Android StudioTextView實現馬燈效果

    自建一個MarqueeText 類 繼承自AppCompatTextView並重載父類的三個構造方法,新增一個isFocused方法 public class MarqueeText extends AppCompatTextView { public Marque

    由於焦點衝突導致TextView馬燈效果和EditText能共存的問題

    當我們需要TextView的跑馬燈效果時,通常會用到android:ellipsize="marquee"的屬性,但是該屬性只有在TextView獲取焦點時才會起效,所以一般我們會自定義TextView,繼承TextView,然後複寫isFocused方法,讓該方法返回tru

    ListView,ItemTextView設定馬燈效果;

    在設定跑馬燈效果時,需要獲取焦點,然後呢,導致item不能點選, 解決辦法: 在textview屬性中先設定如下 <TextView android:id="@+id/channels_item_types"

    TextView馬燈效果(AS開發實戰第二章學習筆記)

    color clas eat star log ble _for ellipsize ddl TextView的跑馬燈效果跑馬燈用到的屬性與方法說明singleLine 指定文本是否單行顯示ellipsize 指定文本超出範圍後的省略方式focusable 指定是否獲得焦點

    TextView馬燈效果

    焦點 包括 效果 avi gpo textview 跑馬燈 nbsp lips TextView的gravity屬性可以指定文本的對齊方式 跑馬燈的實現: 1.singleLine設置為true 2.ellipsize(文本超出後的省略方式,包括start、middle

    Android控制元件TextView馬燈功能問題記錄

    轉載自:https://www.cnblogs.com/jesn/p/4298249.html 在使用TextView練習跑馬燈時出現了以下問題: 為控制元件設定了以下屬性  <!--啟用焦點--> android:focusable="true" <!--單行顯示

    Android TextView 實現馬燈效果

    自定義一個TextView控制元件 public class MarqueeTextView extends AppCompatTextView { public MarqueeTextView(Context context) { s

    TextView馬燈效果以及TextView的一些屬性

    TextView應該是用的最廣的控制元件了,要是這句話不對我直播吃翔,這幾天的專案用到跑馬燈,居然忘記怎麼設定了,還要Google才能解決,看來雖然很基本的東西,但是用的少還是容易遺忘,所以我決定把它寫下來加深點印象,方便以後查詢 具體效果 : 佈局檔案 <R

    使用TextView實現馬燈Marquee

    1、定義textView標籤的4個屬性: android:singleLine=”true”//使其只能單行 android:ellipsize=”marquee”//去掉省略號 android:focusable = “true”//使其迴圈 andr

    自定義TextView實現馬燈效果

    <span style="font-size:18px;">package com.example.textviewpao; import android.content.Context; import android.graphics.Canvas; import android.graphi

    android馬燈效果的實現

    android中常見的跑馬燈效果實現的程式碼以及思路分析 有些童鞋想用TextView實現跑馬燈的效果 , 程式碼如下: <TextView android:layout_width="wrap_content" a

    TextView文字馬燈效果

    專案中要用到跑馬燈效果,如下: 雖說看起來挺簡單,但還是踩了好幾個坑,故此記錄一下。 剛開始的時候以為設定以下兩個引數就好: android:lines="1" android:ellipsize="marquee" “ellipsize”引數代

    android 實現TextView實現馬燈形式的字型

             <TextView             android:id="@+id/t1"             android:layout_width="200dp"             android:layout_height="wrap_content"           

    解決TextView設定馬燈但卻沒有效果

    轉載自:http://blog.csdn.net/a_zhon TextView跑馬燈可以讓顯示不完的文字,以動畫的形式滾動顯示,但今天寫了竟然沒有任何效果這就很鬱悶了!原來是沒有獲取到焦點 <TextView android:layout_wid

    Android 使用TextView實現馬燈效果

    too pan 例如 use teset ble isf deb png 前言 我們在開發中經常會遇到一個小問題。比如下面一個小例子: 這個文字太長,單行中導致無法全部顯示出來,這就是今天要實現的功能。 當然,百度中也有很多這種解決方案。 其中有一種,例如:

    初學者---Android TextView實現馬燈效果

    TextView實現跑馬燈效果 <TextView android:layout_width="100dip" android:layout_height="wrap_content"

    Android TextView實現馬燈效果

    在實際的開發中,我們有時候需要滾動的顯示資訊,這就是我們所說的跑馬燈效果。 Android中的TextView可以很容易的顯示這個效果,只需要新增以下屬性就可以了 android:ellipsize="marquee" android:marqueeRepeatLimit=

    AndroidTextView獲取焦點可以實現馬燈的效果

    第一種: Animation ani = new TranslateAnimation(310f, -400f, 0.0f, 0.0f);   ani.setDuration(10000);   ani.setRepeatCount(500);   ani.se

    Android應用TextView馬燈效果

    往往有很多時候我們所使用的TextView能顯示的內容字數是有限的,有時當我們要設定的內容長度過長時,我們的UI頁面就會出現一些不和諧的現象。 處理方法(很少有人把...放在前面的吧…^ v ^): 1,尾部(...)處理      android:ellipsize=