2015-11-06 71 views
3

我有一個簡單的TextView:滾動TextView的價值被切斷

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" 
    tools:context=".MainActivity" 
    tools:showIn="@layout/activity_main"> 

    <TextView 
     android:id="@+id/textView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:singleLine="true" 
     android:ellipsize="marquee" 
     android:scrollHorizontally="true"/> 

</RelativeLayout> 

文本值與切客「......」,這是什麼問題?

enter image description here

Dinamically我有一個簡單activty與滾動移動:

import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import android.text.method.ScrollingMovementMethod; 
import android.widget.TextView; 

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     TextView t = (TextView) findViewById(R.id.textView); 
     t.setMovementMethod(new ScrollingMovementMethod()); 
     t.setSelected(true); 
    } 
} 

預先感謝您

SOLUTION:未設置setMovementMethod但只的setSelected(真),如果有必要。在Yvette答案中查看評論。

回答

2

我把這個出

app:layout_behavior="@string/appbar_scrolling_view_behavior" 

,並添加了功能從以前的問題HorizontalScrollView cut the text in a TextView and autoscorlling

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin"> 

<TextView 
    android:id="@+id/textView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:singleLine="true" 
    android:ellipsize="marquee" 
    android:scrollHorizontally="true" 
    android:focusable="true" 
    android:focusableInTouchMode="true" 
    android:foregroundGravity="left" 
    android:marqueeRepeatLimit="marquee_forever" 
    android:maxLines="1" 
    android:text="Title Song and too much information to display in one line." 
    android:textAppearance="?android:attr/textAppearanceMedium"/> 

</RelativeLayout> 

enter image description here

+0

嗨,我與你的佈局文件我仍然是同樣的錯誤,我不知道爲什麼:(我使用Android 5.0 – Hazlo8

+0

我在活動中沒有做任何事情,它會自動滾動這樣的XML。創建一個新項目並將該xml添加到Mainactivity xml中,並且它將工作。還需要查看上一個問題的修訂版,因爲我修復了所有錯誤。 –

+0

Alex,在這個問題中,您有一個單獨的textview如果你將我的答案併入一個更復雜的佈局,可能還有其他原因導致它失敗,當你提出一個問題來解決一個更大的問題時,你需要牢記這一點 –

0

嘗試增加給你的XML佈局:

android:maxLines="1" 
0

從您的xml中刪除代碼:android:singleLine="true"