Reputation: 1424
I am trying to display 2 items in a TextView. Is their any way to change the font of the single item in a TextView?
Here is the XML which I am using
<?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>
Upvotes: 10
Views: 53898
Reputation: 10052
One way is to use TextView.setText() method and feed it with HTML, like this:
import android.text.Html;
String n = "<b>bold</b> <small>small</small>";
TextView tv = (TextView) findViewById(...)
tv.setText(Html.fromHtml(n));
I often use it for some minor markup (like make part bolder or smaller)
Upvotes: 8
Reputation: 659
Use 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"/>
Use sp if the user can rescale the text without breaking the UI. If rescaling the text would break the UI, use dp.
Upvotes: 17
Reputation: 758
Use the HTML class from this link http://code.google.com/p/android-richtexteditor/source/browse/trunk/src/net/sgoliver/Html.java?r=4 . We would be able to set font size from this class. Normal android.text.Html actually ignores font size. Tried and tested and it worked for me.
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));
Upvotes: 2
Reputation: 3552
You can use html for this like this:
mytextView.setText(Html.fromHtml("<p> <font size="20" color="#0066FF" style="font-style:italic">Push this button</font> to start a new game.</p>"))
remove color and style attributes if you don't need them.
Upvotes: -1