22

我希望在我调用 setText 的行中使用一些制表符

if(id==R.id.radioButton1){
            title.setText(numbertext.getText()+" Grams");

在这种情况下,我想在 numbertekst.getText() 和克之间切换。输出是带有值的简单行的一部分。但是由于我找不到选项卡,所以该行有点难看。

我知道我可以使用多个文本字段甚至一个表格。但由于我已经有很多代码,我还不想那样做。

我尝试使用 Java 方式放置 \t,但这似乎不起作用。

任何帮助,将不胜感激。

4

3 回答 3

27

您应该在文本中添加制表符,但 \t 在 settext 中不起作用。解决方案是在字符串资源中添加\u0009以 unicode char 表示的字符。

<string name="tab">\u0009</string>

TextView hello = (TextView) findViewById(R.string.helloTextView);

hello.setText("e"+getString(R.string.tab)+"e");

只需结合更多选项卡以获得更多空间

getString(R.string.tab)+getString(R.string.tab)+getString(R.string.tab)
于 2013-01-28T22:11:53.410 回答
11

"\t" 也可以,"\n" 用于开始新行

于 2015-10-23T03:01:07.887 回答
0

如果 "\t" 不起作用并且 \u0009 (制表符的 Unicode)仅显示 1 个空格:

在 values/strings.xml 添加

<string name="tab">\u0009\u0009\u0009\u0009</string>

然后在你的Java文件中添加

textView.setText("text" + getString(R.string.tab) + "moretext");
于 2017-08-03T14:04:04.383 回答