TextView의 글자를 왼쪽에서 오른쪽으로 흐르게하고싶은데 어떻게하죠?


앱을 만들고있는데 앱에서 공지사항으로 상단에 텍스트뷰가 계속해서 흐르게 하고싶은데 어떻게 하면 될지 모르겠습니다. 고수님들 가르쳐주세요.

  • 2016년 02월 25일에 작성됨

조회수 235


1 답변


좋아요
0
싫어요
채택취소하기
<TextView
android:ellipsize="marquee"
android:singleLine="true"
android:marqueeRepeatLimit="marquee_forever"/>

이런식으로 속성을 주면되는데 TextView에 포커스가 위치해있을경우에만 흐릅니다. 그렇게 때문에 커스텀 텍스트뷰를 만들어서

import android.content.Context;
import android.graphics.Rect;
import android.util.AttributeSet;
import android.widget.TextView;

public class MarqueeTextView extends TextView{
    public MarqueeTextView(Context context) {
        super(context);
    }

    public MarqueeTextView(Context context, AttributeSet attributeSet) {
        super(context, attributeSet);
    }

    @Override
    protected void onFocusChanged(boolean focused, int direction, Rect
      previouslyFocusedRect) {
        if(focused)
        super.onFocusChanged(focused, direction, previouslyFocusedRect);
    }

    @Override
    public void onWindowFocusChanged(boolean focused) {
        if(focused)
            super.onWindowFocusChanged(focused);
    }

    @Override
    public boolean isFocused() {
        return  true;
    }
}

이렇게 해주고 레이아웃xml에서는 TextView를 커스텀 텍스트뷰로 바꿔주어야합니다.

<com.test.MarqueeTextView
android:id="@+id/textViewTitleOnDrawBar"
android:layout_width="fill_parent"
android:layout_height="fill_parent""
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:singleLine="true"
android:text="흐르는 텍스트~~~~~~~~~"/>
  • 2016년 02월 25일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close