Мне рекомендовали использовать родительское представление, чтобы получить горизонтальную прокрутку прямо в моем TextView:
<HorizontalScrollView android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:scrollHorizontally="true"
android:gravity="center|right"
android:text="123456789"/>
</HorizontalScrollView>
Горизонтальная прокрутка работает отлично, но делает переполнение содержимого справа, когда оно становится длиннее его родительской ширины:
-------
|123456|7
-------
Однако я работаю над текстовым представлением, содержащим числа, и поскольку числа обычно выравниваются вправо, мне нужно, чтобы textview переходил на противоположную сторону. (вам нужно прокрутить влево, чтобы увидеть начало строки).
------
1|4567|
------
Я попробовал несколько комбинаций силы тяжести = "право" и ширины, но я не могу этого сделать. Как я могу выровнять текст вправо и сделать его переполнением влево?
EDIT:
Я пытался сделать это, когда пользователь набирает:
calc.setText( newNumber );
HorizontalScrollView hsv = (HorizontalScrollView) findViewById(R.id.hsv);
hsv.scrollTo(hsv.getRight(), hsv.getTop());
Это число прокручивается вправо каждый раз, когда пользователь вводит число, однако последнее число всегда остается вне экрана (он как бы прокручивается, а THEN добавляет номер).