TextView의 글자를 왼쪽에서 오른쪽으로 흐르게하고싶은데 어떻게하죠?
조회수 2375회
1 답변
-
<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="흐르는 텍스트~~~~~~~~~"/>
댓글 입력