【问题标题】:Lined up multiline String into textView将多行字符串排成 textView
【发布时间】:2023-03-26 21:48:01
【问题描述】:

我在将文本格式化为 TextView 字段时遇到问题。我正在用数据库中的数据填充字符串,我想让它对齐:

for (cursor.moveToFirst(); !cursor.isAfterLast(); cursor.moveToNext()) {
SomeString = SomeString + String.format("|%1$-4s|%2$-12s|%3$-10s|\n",
    cursor.getString(someColumn1),
    cursor.getString(someColumn2),
    cursor.getString(someColumn3));
    }
Return SomeString

比我将此字符串设置为 textView 字段。 实际上,它看起来像这样:

|SomeColumn1|SomeColumn2|SomeColumn3|  
|SomeColumn1|SomeColumn2StringLonger|SomeColumn3|    
|SomeColumn1|ShorterC2|SomeColumn3|

它应该是这样的:

|SomeColumn1-----|SomeColumn2-----|SomeColumn3|  
|SomeColumn1-----|SomeLargerString|SomeColumn3|  
|SomeColumn1-----|Shorter---------|SomeColumn3|  

我试过String.format("|%1$.4s|%2$.12s|%3$.10s|\n")

【问题讨论】:

    标签: android textview string.format text-formatting text-alignment


    【解决方案1】:

    我遇到了同样的问题。

    只需添加这一行:

    android:typeface="monospace"
    

    进入 textView xml 定义,格式化现在可以工作了。

    这都是关于单个字符的宽度。空白显然比其他标志短。 Monospace 使字符具有相同的宽度。就这么简单。

    干杯!

    【讨论】:

      猜你喜欢
      • 2015-09-18
      • 2011-05-11
      • 1970-01-01
      • 2013-10-23
      • 2018-05-26
      • 2013-05-13
      • 1970-01-01
      • 1970-01-01
      • 2012-08-25
      相关资源
      最近更新 更多