TextView без частично нарисованных линий - PullRequest
1 голос
/ 02 февраля 2011

Можно ли создать в Android TextView, который может прокручивать много строк текста, но не будет рисовать первую или последнюю строку текста, если его нельзя нарисовать по высоте полностью?Я понимаю, что это может выглядеть странно при прокрутке, но я не хочу видеть обрезанные вершины или основания символов.

Предлагаемое решение может включать изменение платформы Android.

Ответы [ 4 ]

1 голос
/ 13 сентября 2011

Я не знаю, что вы имеете в виду, изменяя платформу Android, но нет ограничений в кодировании вашего собственного TextView (или расширения Android TextView для изменения прокрутки), если вы хотите совершенно новое поведение.

Если вы действительно хотите это сделать, вы можете изменить поведение Touch / Scrolll для прямой прокрутки до следующей / предыдущей видимой строки, попробуйте изменить TextView Scoller (метод setScoller( )). Если это не сработает, вам придется написать собственный код (в основном, получить положение линии на textview.getLayout().getLineTop(line number) и расположить верх экрана в этой точке).

Единственное ограничение, которое у вас есть, - это когда вам нужно что-то изменить, встроенное в «ядро» (например, медиа-протокол от MediaPlayer).

Проверьте это Пример выделения

0 голосов
/ 09 июля 2014

Проект Android Terminal Emulator включает в себя библиотеку с классом EmulatorView, которая ведет себя практически так, как я хочу, и с открытым исходным кодом: https://github.com/jackpal/Android-Terminal-Emulator

Он содержит довольно много дополнительного кода для терминала, хотя, возможно, при необходимости его можно будет удалить. Однако я должен предположить, что он поддерживает только моноширинные шрифты, что делает его менее полезным.

0 голосов
/ 19 сентября 2011

Удивительно, но я бы посоветовал вам использовать WheelView от Юрия

Если вы выбрали удачное сочетание фона, высоты и ширины;вы получите именно тот эффект, который вам нужен.

0 голосов
/ 14 сентября 2011

Посмотрите, можете ли вы использовать этот класс http://developer.android.com/reference/android/text/method/ScrollingMovementMethod.html вместе со скроллером.Ваша высота textView должна быть кратна вашей высоте текстовой строки.

...