2017-02-19 51 views
4

如何使用MaxLines而不是SingleLine選取框?使用maxLines的選框

這是我的TextView:

<TextView 
    android:text="bla bla bla bla bla bla" 
    android:id="@+id/MarqueeText" 
    android:layout_width="30dp" 
    android:layout_height="wrap_content" 
    android:singleLine="true" 
    android:ellipsize="marquee" 
    android:marqueeRepeatLimit="marquee_forever" 
    android:scrollHorizontally="true" 
    android:focusable="true" 
    android:focusableInTouchMode="true" 
    android:freezesText="true"> 

在我code.java後,我setSelectedTextView

TextView txtView=(TextView) findViewById(R.id.MarqueeText); 
txtView.setSelected(true); 

問題是android:singleLine已被棄用,所以我不得不使用android:maxLines代替,但字幕不要使用它。

回答

1

您可以嘗試使用此:

android:maxLength = "10" 

OR

設置android:maxLines="1"後,你必須設置你的inputType了。所以,請設置你的android:inputType="text",那應該可以做到。

+0

我們不能對一個TextView –

+0

設置的inputType爲什麼不呢?看到這個鏈接https://developer.android.com/reference/android/widget/TextView.html –

2

在XML

<TextView 
    android:text="11111111111111111111111111111111111111111111111111111111111111" 
    android:id="@+id/text_marquee" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:maxLines="1" 
    android:ellipsize="marquee" 
    android:marqueeRepeatLimit="marquee_forever" 
    /> 

在Java

((TextView)findViewById(R.id.text_marquee)).setHorizontallyScrolling(true); 
((TextView)findViewById(R.id.text_marquee)).setSelected(true);