Selamat siang para developer, kali ini kita akan mempelajari bagaimana cara merubah font di android dengan Calligraphy Library. 

Seperti biasa kita import librarynya di build.gradle

 dependencies {  
   compile 'uk.co.chrisjenx:calligraphy:2.2.0'  
 }  

Selanjutnya kita copy file .ttf atau .otf pada folder app/src/main/assets/fonts, jika tidak ada folder assets buat dulu foldernya.

Sekarang kita buat file javahya dan beri nama MyApp lalu isi seperti dibawah :




 package com.panduseptian.customfont;  
 import android.app.Application;  
 import uk.co.chrisjenx.calligraphy.CalligraphyConfig;  
 /**  
  * Created by pandu on 28/11/16.  
  */  
 public class MyApp extends Application {  
   @Override  
   public void onCreate() {  
     super.onCreate();  
     CalligraphyConfig.initDefault(new CalligraphyConfig.Builder()  
         .setDefaultFontPath("fonts/Oswald-Stencbab.ttf")  
         .setFontAttrId(R.attr.fontPath)  
         .build()  
     );  
   }  
 }  

Sekarang kita daftarkan MyApp sebagai name Aplikasi kita, buka AndroidManifest.xml lalu tambahkan attribute name pada tag application seperti berikut : 


Sekarang kita inject pada activity dengan cara memasukan void attachBaseContext(Context newBase) seperti dibawah :
 @Override  
   protected void attachBaseContext(Context newBase) {  
     super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));  
   }  

Full codingnya seperti ini :

 package com.panduseptian.customfont;  
 import android.content.Context;  
 import android.support.v7.app.AppCompatActivity;  
 import android.os.Bundle;  
 import uk.co.chrisjenx.calligraphy.CalligraphyContextWrapper;  
 public class MainActivity extends AppCompatActivity {  
   @Override  
   protected void onCreate(Bundle savedInstanceState) {  
     super.onCreate(savedInstanceState);  
     setContentView(R.layout.activity_main);  
   }  
   @Override  
   protected void attachBaseContext(Context newBase) {  
     super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));  
   }  
 }  

Sekarang Kita ubah viewnya agar lebih jelas perubahannya


 <?xml version="1.0" encoding="utf-8"?>  
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
   xmlns:tools="http://schemas.android.com/tools"  
   android:id="@+id/activity_main"  
   android:layout_width="match_parent"  
   android:layout_height="match_parent"  
   android:paddingBottom="@dimen/activity_vertical_margin"  
   android:paddingLeft="@dimen/activity_horizontal_margin"  
   android:paddingRight="@dimen/activity_horizontal_margin"  
   android:paddingTop="@dimen/activity_vertical_margin"  
   tools:context="com.panduseptian.customfont.MainActivity">  
   <TextView  
     android:layout_width="match_parent"  
     android:layout_height="match_parent"  
     android:gravity="center"  
     android:text="Custom Font"  
     android:textSize="30dp"/>  
 </RelativeLayout>  

Sekarang kita run projectnya dan hasilnya seperti ini :



Cukup sekian sharing tentang Custom Font Androidnya, semoga bermanfaat untuk teman-teman semua. Terima Kasih.

Post a Comment

Pandu Septian Gumilar

{picture#http://kekirian.com/wp-content/uploads/2015/12/10419440_814838468537519_2081836625630750537_n-150x150.jpg} YOUR_PROFILE_DESCRIPTION {facebook#YOUR_SOCIAL_PROFILE_URL} {twitter#YOUR_SOCIAL_PROFILE_URL} {google#YOUR_SOCIAL_PROFILE_URL} {pinterest#YOUR_SOCIAL_PROFILE_URL} {youtube#YOUR_SOCIAL_PROFILE_URL} {instagram#YOUR_SOCIAL_PROFILE_URL}
Powered by Blogger.