This tutorial will help you to learn to set a custom font or your favourite ttf font for a TextView in android java
Create a TextView in your activity_main.xml layout
<TextView android:textColor="@color/colorPrimaryDark" android:id="@+id/text3" android:layout_width="350sp" android:gravity="center" android:layout_height="wrap_content" android:textSize="50sp" android:text="Hello this is a textview" android:layout_centerHorizontal="true" />
Note the android:id=”@+id/text3″ we will use the id:text3 to refer to this textview in the activity
Create assets folder
in android, fonts are placed inside a special folder named assets, let’s create one.
Select packages in project window, right-click on the app > New > Folder > Assets Folder click ok to confirm
Create another folder named fonts inside the assets folder and paste your .ttf font inside it, you can have multiple fonts inside the fonts folder
Next, go to the MainActivity.java , enter the following code
TextView mytext= (TextView) findViewById(R.id.text3); Typeface tf = Typeface.createFromAsset(getAssets(), "fonts/Your font name here.ttf"); mytext.setTypeface(tf);}
That’s it. 🙂
Full code of MainActivity.java
import android.graphics.Typeface; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.TextView; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TextView mytext= (TextView) findViewById(R.id.text3); Typeface tf = Typeface.createFromAsset(getAssets(), "fonts/Your font name here.ttf"); mytext.setTypeface(tf);} }
Full code of xml activity_main
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <TextView android:textColor="@color/colorPrimaryDark" android:id="@+id/text3" android:layout_width="350sp" android:gravity="center" android:layout_height="wrap_content" android:textSize="50sp" android:text="Hello this is a textview" android:layout_centerHorizontal="true" /> </RelativeLayout>