반응형
안녕하세요 알통몬입니다. 공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!! 포스팅 내용이 찾아주신 분들께 도움이 되길 바라며 더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^
|
먼저 적용할 폰트가 필요하겠죠?
폰트는 네이버 폰트나, 배달의 민족 등등 여러 사이트에서 무료 폰트 다운받으시면 됩니다!
확장자는 .ttf 나 .otf 둘 다 상관 없습니다~
이제 적용방법에 대해 알아보겠습니다!
1. app 밑에 assets 라는 폴더를 생성합니다.
2. 원하는 폰트를 위 사진처럼 넣어줍니다!!
3. 해당 폰트를 적용시킬 부모 클래스를 만듭니다!!!
전 BaseActivity라는 클래스를 만들었습니다.
아래 코드를 그대로 가져다쓰시면 됩니다.
만약 폰트를 적용하고자 하는 클래스가 AppCompatActivity 클래스를 상속 받고 있다면
BaseActivity가 AppCompatActivity 클래스를 상속 받게 하면 됩니다.
그리고 "BMHANNA_11yrs_ttf.ttf" 요 부분에 원하는 폰트를 적용해 주시고!!
public class BaseActivity extends Activity {
private static Typeface typeface;
@Override
public void setContentView(int layoutResID) {
super.setContentView(layoutResID);
if(typeface == null) {
typeface = Typeface.createFromAsset(this.getAssets(), "BMHANNA_11yrs_ttf.ttf");
}
setGlobalFont(getWindow().getDecorView());
}
private void setGlobalFont(View view) {
if(view != null) {
if(view instanceof ViewGroup) {
ViewGroup viewGroup = (ViewGroup)view;
int vgCnt = viewGroup.getChildCount();
for(int i = 0; i<vgCnt; i++) {
View v = viewGroup.getChildAt(i);
if(v instanceof TextView) {
((TextView) v).setTypeface(typeface);
}
setGlobalFont(v);
}
}
}
}
}
4. 폰트를 적용하고자 하는 클래스가 BaseAcitivity를 상속받게 하면 됩니다 !!
반응형
'안드로이드' 카테고리의 다른 글
안드로이드 EditText Auto focus 자동 포커싱 방지, 자동 포커스 없애기 (0) | 2017.03.11 |
---|---|
안드로이드 AsynkTask 클래스 (0) | 2017.03.11 |
안드로이드 문자 일치 여부 체크 (ex. 비밀번호와 비밀번호 재입력의 값이 같은지 검사) (0) | 2017.03.10 |
안드로이드 액티비티 이동 시 값 전달 (Intent) putExtra(), getExtras() (0) | 2017.03.10 |
안드로이드 버튼 터치 시 버튼 색상 변경 (0) | 2017.03.10 |