Translate this page

Set Custom Font for TextView Android App Java

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>

 

 




Related Posts

Get Your Own Android Mobile App for Your Website Today

Are you looking to expand your online presence and reach more customers? In today’s digital age, having a mobile app is an essential tool to connect with…

Why making an app for your website can help your business to grow

In today’s digital age, it’s more important than ever to have a strong online presence. Whether you’re running a business, a blog, or a personal website, having…

person using macbook pro on person s lap

Fix android.content.Intent.migrateExtraStreamToClipData(android.content.Context)’ on a null object reference

Here is how to Fix Android Studio Error Attempt to invoke virtual method ‘boolean android.content.Intent.migrateExtraStreamToClipData(android.content.Context)’ on a null object reference This error is caused by a number…

Android Spinner onItemSelected Listener Example

Spinner is an android UI element; it provides a drop-down List where you can choose an item from the list. You will need a listener to catch…

person in gray shirt holding a small paper with texts

Get Current Month Name in Java Android

The code below can be used to get the name of current month, for example, January, February, March etc. Just call this method and it will return…

The future of android developers is not good

Are you an android developer or looking to be an android developer? You should read this Myself is zid, I’m an android developer and been in this…

Leave a Reply

Your email address will not be published. Required fields are marked *