Как использовать стиль при вводе textView в код вручную в Android? - PullRequest
0 голосов
/ 02 июня 2011

Я стараюсь, чтобы моя игра работала во всех макетах одинаково хорошо, и для облегчения этого я использую стили, которые зависят от размера.Проблема в том, что это нарушает функцию, которую я кодировал напрямую, из-за высокой повторяемости.Итак, что я могу сделать, чтобы применить один из моих стилей к этим текстовым представлениям, которые я создаю в коде?

Пример кода стиля:

<style name="medText">
    <item name="android:textSize">22sp</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:layout_width">wrap_content</item>
</style>

Пример кода программы:

TableRow row=new TableRow(this);
TableLayout tlayout=new TableLayout(this);
text1.setText(R.string.name);
row.addView(text1);
text2.setText(R.string.level);
row.addView(text2);
text3.setText(R.string.score);
row.addView(text3);
tlayout.addView(row);

Я повторяю цикл повторного создания этих TextViews несколько раз, причем последующие содержат переменный ввод.

Ответы [ 2 ]

1 голос
/ 02 июня 2011

Попробуйте это:

TableRow row=new TableRow(this);
TableLayout tlayout=new TableLayout(this);
text1.setText(R.string.name);
text1.setTextAppearance(this, R.style.medText);
row.addView(text1);
text2.setText(R.string.level);
text2.setTextAppearance(this, R.style.medText);
row.addView(text2);
text3.setText(R.string.score);
text3.setTextAppearance(this, R.style.medText);
row.addView(text3);
tlayout.addView(row);

Дайте мне знать, если это работает: никогда не использовал функциональность отображения текста.

0 голосов
/ 02 июня 2011

Чтобы установить стиль в TextView

Если вы объявили свой TextView в xml в этом xml, вы должны передать style="@style/medText"

Пример

<TextView
 android:layout_width="fill_parent"
 android:text="@string/menu_legal_termsandcondition"
 android:padding="3dip" 
 style="@style/medText"
 android:layout_weight="2"/>

Если вы создали TextView динамически, тогда вы должны использовать text1.setTextAppearance(this, R.style.medText); в своем Java-коде

Спасибо Дипак

...