2015-07-07 3 views
1

Ну, я взял TextView внутри HorizontalScrollView, чтобы прокрутить текст, если он становится слишком большим. Но, к сожалению, текст не выравнивается правильно - форма оставляет много текста, которое скрывается, если текст большой.Как разместить текст TextView в HorizontalScrollView

Планировка:

<HorizontalScrollView 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent"> 

     <TextView 
      android:id="@+id/retBal" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center_horizontal" 
      android:lines="1" 
      android:scrollHorizontally="true" 
      android:singleLine="true" 
      android:text="Amount is being processed.." 
      android:textColor="@color/_2ndGray" 
      android:textSize="17sp" 
      android:textStyle="bold" /> 
    </HorizontalScrollView> 

В классе деятельности:

TextView txtVwRetBal = (TextView)findViewById(R.id.retBal); 

txtVwRetBal.setText("Balance is xyz11111111122222222222222333333333444444444555555555666666666677777777788888pqr"); 

Как решить эту проблему?

ответ

4

Почему вы должны использовать горизонтальный прокручивать наружу? Просто добавьте горизонтальную полосу прокрутки в текстовое окно, как сказал @Vishwajit Palankar. Дополнительно добавьте android: ellipsize = "none" и android: singleLine = "true" в вашем файле макета xml.

например:

<TextView 
    android:id="@+id/txt1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:ellipsize="none" 
    android:scrollbars="horizontal" 
    android:singleLine="true" /> 

и в Java файл инициировать TextView и добавить scrollingMovementMethod()

TextView txtv = (TextView)findViewById(R.id.txt1); 
txtv.setMovementMethod(new ScrollingMovementMethod()); 
txtv.setText("balance is : " + "mnp111111111111122222222222222222222333333333333333333333333333xyz "); 
1

Вместо использования HorizontalScrollView вы можете просто установить свойство в вашем TextView, чтобы сделать его прокрутки по горизонтали

android:scrollbars = "horizontal" 

Тогда в классе Java это сделать

textView.setMovementMethod(new ScrollingMovementMethod()); 
Смежные вопросы