我想将每个角色放在新线上。 我正在使用以下xml。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="12dip"
android:layout_marginLeft="12dip"
android:textSize="12dip"
android:layout_height="fill_parent"
android:text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
</LinearLayout>
但是我得到的输出如下(在某些第2行的角色即将到来)
。
我知道我可以使用\n
,但任何人都有更好的选择。
答案 0 :(得分:1)
这是一种可行的黑客攻击:
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:ems="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:typeface="monospace"
android:gravity="center_horizontal"
android:text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
android:textColor="@android:color/white"
/>
这依赖于等宽字体,其中所有字符都具有相同的宽度。
答案 1 :(得分:0)
你在每一行上获得2个字符的原因是由于视图的静态宽度。我真的不会用静态宽度的单个视图来解决这个问题。
对此有很多解决方案,但根据您提供的信息,我可能会像您一样创建一个textview布局,并通过代码动态扩展一系列textview。 AKA字符串中的每个字符都被分配给它自己的textview。