2013-03-20 4 views
8

Я пытаюсь отобразить 2 элемента в текстовом виде. Есть ли способ изменить шрифт одного элемента в текстовом виде?изменить размер шрифта элемента textview в android

здесь является XML, который я использую

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

    <TextView 
     android:gravity="center_horizontal" 
     android:paddingTop="5dp" 
     android:paddingBottom="5dp" 
     android:id="@+id/Rowtext" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     android:text="Listiems" 
     android:background="@drawable/customshape" 
     /> 

</LinearLayout> 

Спасибо :)

+0

В каком направлении вы хотите это сделать. Во время выполнения или в XML? –

+3

Посмотрите это - http://stackoverflow.com/a/2179039/361230 и это - http://blog.stylingandroid.com/archives/177 – Shade

+0

@Fahad Я понятия не имею, какой путь лучше, поэтому и укажите, какой путь лучше сделать – Beginner

ответ

5

Один из способов заключается в использовании метода TextView.setText() и кормить его с HTML, как это:

import android.text.Html; 

String n = "<b>bold</b> <small>small</small>"; 
TextView tv = (TextView) findViewById(...) 
tv.setText(Html.fromHtml(n)); 

Я часто использую его для некоторой незначительной разметки (например, сделайте часть более смелой или меньшей)

+0

erm, вопрос был об изменении шрифта: -/ Ответ Shade выглядит хорошо! – pelotasplus

+0

Существует опечатка в методе «fromHtml». Вместо этого он говорит formHtml. – mpccolorado

0

Вы можете использовать html fo r вот так:

mytextView.setText(Html.fromHtml("<p> <font size="20" color="#0066FF" style="font-style:italic">Push this button</font> to start a new game.</p>")) 

удалите атрибуты цвета и стиля, если они вам не нужны.

2

Используйте этот HTML-код для этой ссылки http://code.google.com/p/android-richtexteditor/source/browse/trunk/src/net/sgoliver/Html.java?r=4. Мы могли бы установить размер шрифта из этого класса. Обычный android.text.Html фактически игнорирует размер шрифта. Пробовал и тестировал, и это сработало для меня.

TextView tv = (TextView)findViewById(R.id.textview); 

String s = "<p>Some Text here<br><b>hi </b><font size =\"20\"><b><i>\"italics</i></b></font><b><i> </i></b><b><i><u>underline</u></i></b></p>"; 

tv.setText(Html.fromHtml(s)); 
+0

Размер не работает. вы можете использовать только или Tobliug

15

Использование android: textSize.

<TextView 
    android:id="@+id/time" 
    android:gravity="right" 
    android:padding="5dp" 
    android:textSize="40dp" 
    android:textColor="#88ffff00" 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    android:layout_weight="1" 
    android:text="Time: 60"/> 

Используйте sp, если пользователь может перемасштабировать текст, не нарушая пользовательский интерфейс. Если перемасштабирование текста нарушит пользовательский интерфейс, используйте dp.

+2

Разве мы не должны использовать SP для размеров шрифтов? Я думаю, что это должно быть 40sp не 40dp –

+0

Спасибо! Он работает ... – rzaaeeff

+2

Используйте sp, если пользователь может перемасштабировать текст, не нарушая пользовательский интерфейс. Если перемасштабирование текста нарушит пользовательский интерфейс, используйте dp. http://stackoverflow.com/a/11638914/2713250 – Ags1

Смежные вопросы