2011-02-02 76 views
1

在Android中创建TextView可以滚动多行文本,但不会绘制文本的第一行或最后一行,除非它可以完全绘制在它的高度上吗?我意识到滚动时它可能看起来很奇怪,但我不想看到人物的切割顶部或底部。没有部分绘制线条的TextView

建议的解决方案可能涉及修改android平台。

+0

你想textView一行一行滚动,不顺利......? – Ronnie 2011-09-13 14:45:52

回答

1

我不知道你的意思是通过修改android平台,但是如果你想要一个全新的行为,在编写自己的TextView(或者扩展android textview来改变滚动)时没有限制。

如果您确实想要这样做,您可以更改触摸/滚动行为以直接滚动到下一个/上一个可见行尝试更改TextView Scoller(方法setScoller())。如果这不起作用,你将不得不自己编码(基本上通过textview.getLayout().getLineTop(line number)获得线位置并将屏幕顶端定位到该点)。

您唯一的限制是当您需要更改“内核”中嵌入的内容(例如,MediaPlayer的媒体协议)。

入住这marquee example

0

令人惊讶的是,我会建议你使用WheelView by Yuri

如果你选择的背景,高度和宽度的你一个很好的结合;你会得到你想要的效果。

0

Android的终端模拟器项目包括与行为几乎就是我想要的而且是开源的EmulatorView类库:https://github.com/jackpal/Android-Terminal-Emulator

它包含了终端东西了相当数量的额外的代码虽然但可能是如果有必要,可能会被剥离。但是我必须假定它只支持等宽字体,这使得它不那么有用。