Выравнивание по двум столбцам в Textview - PullRequest
5 голосов
/ 05 марта 2012

В моем приложении есть TextView, в каждой строке которого будет метка, а затем значение данных. Например, какая-то строка может выглядеть так:

Pressure (atm) 0.983
Acceleration 10.277

Теперь у меня есть несколько значений данных сразу, все метки разной длины. Я хочу, чтобы сами значения данных были немного удалены от меток, и все выровнялись, вот так:

Pressure (atm)   0.983
Acceleration     10.277

Есть ли способ сделать это? Спасибо!

Ответы [ 2 ]

4 голосов
/ 05 марта 2012

По моему опыту, это проще сделать, разделив значение и метку на два отдельных TextView, которые вы добавляете в LinearLayout для каждой строки.А в LinearLayout вы можете использовать вес макета, чтобы распределить его так, как вам нравится.

1 голос
/ 05 марта 2012

Вы должны добавить табулятор к тексту. Проблема в том, как добавить его в XML, потому что \t не работает. Решение - добавить 	, который представляет собой табулятор.

Например, в определении XML для Strings.xml

<string name="hello">Hello World, &#9;&#9; TesttabsActivity!</string>

В коде вы также можете использовать опцию \t:

TextView hello = (TextView) findViewById(R.id.helloTextView);
hello.setText("Hello\t\t\tWorld");

Но эта опция не выравнивает, только добавляет пробелы (решение XML также выравнивает)

Надеюсь, это поможет.

...