问题描述
我想缩进TextView的第二行(以及第三,第四等),这可能吗? 我事先不知道确切的TextView文本。 文本将不包含换行符(“ \\ n”)-TextView会将其自动换行。
1楼
另一种可能性是从TextView切换到WebView,然后使用CSS将文本的padding-left设置为20px,text-indent设置为-20px。 除了第一行将被拉回20px的文字外,所有文字应移动20px。
2楼
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参考和占位符文本,则所需的缩进将自动应用于第二行。
祝一切顺利 !! 对有需要的人可能会有帮助。
3楼
我觉得您将需要使用多个TextViews。 一个具有全宽度,然后另一个位于其正下方,左侧具有一些填充或边距,以显示压痕。
在您的代码中,您必须解析文本,以便只有一定数量的字符进入顶部的TextView,其余的进入下面。
不是最大的解决方案,但也许值得一试。 如果要以这种方式进行操作,则肯定要使用等宽字体。 这样,在第一个TextView中,您将总是拥有相同数量的字符,可以容纳在一行中。