본문 바로가기

Programming/android

텍스트 마퀴효과


안드로이드에서 텍스트가 길면, 잘려서 안보이는 경우가 있다. 이런경우, 글자가 흘러가는 효과를 주어 보여주게 하는 방법이 있다.

main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TextView 
      android:id="@+id/marquee_test"
      android:textSize="20px"
      android:focusable="true" 
      android:singleLine="true"
      android:ellipsize="marquee"
      android:marqueeRepeatLimit="marquee_forever"
      android:scrollHorizontally="true"
      android:focusableInTouchMode="true"
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content"
      android:text="1. This is marquee test. android test. 2. This is marquee test. android test."/>
</LinearLayout>

유의해서 봐야할 것은, 

android:focusable="true" 
android:singleLine="true"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:scrollHorizontally="true"
android:focusableInTouchMode="true"


이 속성들을 주어야 한다는 것이고, 

java파일에서, setSelected(true)를 적용해 주어야 한다는 것이다.

MarqueeTest.java 

public class MarqueeTest extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
((TextView) findViewById(R.id.text)).setSelected(true);
    }
}


이렇게 해주면, 길면 좌우로 흘러가는 텍스트뷰를 볼 수 있다.
 

'Programming > android' 카테고리의 다른 글

유튜브 연결 인텐트  (0) 2011.05.23
EditText에 화폐단위(,) 붙이기.  (3) 2011.05.20
전화걸기 인텐트  (0) 2011.04.21
SurfaceView 사용방법  (0) 2011.04.07
getWindow(),requestFeature(int featureId) 종류  (0) 2011.02.20