Android垂直文本视图 - 在另一个下方显示字符,如下所示

问题描述 投票:0回答:2

我想在垂直文本视图中显示文本(即字符应放在另一个下面,如下所示) 一个 b C d

我希望在单个文本视图中执行此操作。我们可以使用android:toDegrees =“ - 90”或“90”来翻转整个文本,但我想显示如上所示,这是用android:toDegress标签无法实现的。

感谢您的帮助!

更新我将通过AIDL从另一个应用程序获取字符串,根据发件人进行更改,此外,他将向我发送一个标志,以垂直或水平方向显示文本。根据标志,我应该相应地显示。我对水平视图没有问题,因为它是默认的,但要以垂直方式显示(如上图所示)我需要帮助。

android textview vertical-alignment
2个回答
0
投票

您可以使用\n<br>为字符串添加换行符

使用\n

<string name="sample_string">a\nb\nc\nd</string>
textView.setText(R.string.sample_string)

使用<br>

<string name="sample_string"><![CDATA[a<br />b<br />c<br />d]]></string>
textView.setText(Html.fromHtml(context.getString(R.string.sample_string))

1
投票

如果String是Dynamic,那么您可以在每个字符后添加\n

private String build(String str){
    if(!TextUtils.isEmpty(str)) {
        StringBuilder builder = new StringBuilder();
        builder.append(str.charAt(0));
        for (int i = 1; i < str.length(); i++) {
                builder.append("\n"+str.charAt(i));
        }
        return builder.toString();
    }
    return "";
}


 textView.setText(build("abcd"));

它会垂直显示。这样文本可以超出Bound,所以你应该在这种情况下使TextView可滚动。

© www.soinside.com 2019 - 2024. All rights reserved.