TextView - 如何使第二行缩进

时间:2010-11-19 16:19:17

标签: android textview textwrapping

我希望我的TextView的第二行(以及第三,第四等)缩进,这可能吗?我事先并不知道TextView的确切文本。文本将没有换行符(“\ n”) - 它将由TextView自动换行。

3 个答案:

答案 0 :(得分:7)

另一种可能性是从TextView切换到WebView,然后使用CSS将文本的填充左侧设置为20px,将文本缩进设置为-20px。这应该将所有文本移动到20px,除了第一行将被拉回20px。

答案 1 :(得分:0)

public static void IndentEffect(WebView webViewv, String string) {
    webViewv.loadData("<html><p style=\"padding-left: 40px;text-indent: -20px;\">" + string.toUpperCase() + "</p></html>", "text/html", "utf-8");
    WebSettings webSettings = webViewv.getSettings();
    webSettings.setTextZoom(webSettings.getTextZoom() + 20);
}

对于上面的包装器方法,如果您只是传递webview引用和占位符文本,那么将自动为第二行应用缩进。

一切都好!可能对有需要的人有所帮助。

答案 2 :(得分:-1)

我觉得您需要使用多个TextView。一个有一个全宽,然后另一个在它下面,左边有一些填充或边距,给出一个缩进的外观。

在您的代码中,您必须解析文本,以便只有一定数量的字符进入顶部TextView,其余字符在下面。

不是最好的解决方案,但它可能值得玩。如果你打算这样做,你肯定会想要使用单声道间隔字体。这样,在第一个TextView中,您将始终拥有相同数量的字符,这些字符可以放在一行中。