導航:首頁 > 操作系統 > android載入字體

android載入字體

發布時間:2022-07-21 03:47:01

⑴ 如何在android使用圖標字體

1. 字體文件製作

進入網站https://icomoon.io/->注冊->登錄->點擊IconMoon App

進入字體生成頁面,點擊菜單的Manage Projects項

進入項目管理頁面,看到項目列表,點擊Load

進入項目開始選擇圖標,選擇後點擊右下角的Generate Font

進入生成預覽頁面,點擊Download

解壓文件後,復制fonts/icomoon.ttf字體文件到Android工程的assets/iconify/egow-icon.ttf


字體製作已完成。Hello, I』m John : )

2. Android應用中如何讀取字體

使用開源項目android-iconify

新建Icon類,實現Icon介面

import com.joanzapata.iconify.Icon;
public enum EGOWIcons implements Icon {
ic_glass('uE92D'),
ic_adjustable_bed_frame('uE900'),
ic_air_conditioner('uE901'),
ic_line_chart('uE902');
char character;
EGOWIcons(char character) {
this.character = character;
}

@Override
public String key() {
return name().replace('_', '-');
}

@Override
public char character() {
return character;
}
}

其中uE92D編碼是對應字體文件水杯的編碼

新建Mole類,用於讀取字體文件

import com.joanzapata.iconify.Icon;
import com.joanzapata.iconify.IconFontDescriptor;
public class EGOWMole implements IconFontDescriptor {

@Override
public String ttfFileName() {
return "iconify/egow-icon.ttf";
}

@Override
public Icon[] characters() {
return EGOWIcons.values();
}
}

在Application類中載入字體模塊

Iconify.with(new EGOWMole());11

開始使用字體圖標,iconDrawable繼承Drawable類

IconDrawable iconDrawable = new IconDrawable(context, icon);11

Android中調用字體圖標已完成。Hello, I』m John : )


3. 如何修改字體樣式,包括大小,顏色,透明度

IconDrawable iconDrawable = new IconDrawable(context, icon);
iconDrawable.sizeDp(24); // 大小
iconDrawable.color(color); // 顏色
iconDrawable.setAlpha(222); // 透明度

⑵ 關於android自定義字體,該怎麼處理

解決方案

1)Android默認方法 #1

你可以通過ID查找到View,然後挨個為它們設置字體。在單個View的情況下,它看起來也沒有那麼可怕。

Typeface customFont = Typeface.createFromAsset(this.getAssets(), "fonts/YourCustomFont.ttf");
TextView view = (TextView) findViewById(R.id.activity_main_header);
view.setTypeface(customFont);
但是在很多TextView、Button等文本組件的情況下,我敢肯定你不會喜歡這個方法的。:D

2)Android默認方法 #2

你可以為每個文本組件創建一個子類,如TextView、Button等,然後在構造函數中載入自定義字體。

public class BrandTextView extends TextView {

public BrandTextView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
public BrandTextView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public BrandTextView(Context context) {
super(context);
}
public void setTypeface(Typeface tf, int style) {
if (style == Typeface.BOLD) {
super.setTypeface(Typeface.createFromAsset(getContext().getAssets(), "fonts/YourCustomFont_Bold.ttf"));
} else {
super.setTypeface(Typeface.createFromAsset(getContext().getAssets(), "fonts/YourCustomFont.ttf"));
}
}
}
然後只需要將標準的文本控制項替換成你自定義的就可以了(例如BrandTextView替換TextView)。

<com.your.package.BrandTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="View with custom font"/>
<com.your.package.BrandTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textStyle="bold"
android:text="View with custom font and bold typeface"/>
還有,你甚至可以直接在XML中添加自定義的字體屬性。要實現這個,你需要定義你自己的declare-styleable屬性,然後在組件的構造函數中解析它們。

為了不佔篇幅介紹這么基礎的東西,這里有一篇不錯的文章告訴你怎麼自定義控制項屬性。

http://kevindion.com/2011/01/custom-xml-attributes-for-android-widgets/
在大多數情況下,這個方法還不賴,並且有一些優點(例如,切換字體粗細等等,字體可以在組件xml文件的typeface屬性中定義)。但是我認為這個實現方法還是太重量級了,並且依賴大量的模板代碼,為了一個替換字體的簡單任務,有點兒得不償失。

3)我的解決方案

理想的解決方案是自定義主題,然後應用到全局或者某個Activity。
但不幸的是,Android的android:typeface屬性只能用來設置系統內嵌的字體,而非用戶自定義字體(例如assets文件中的字體)。這就是為什麼我們無法避免在java代碼中載入並設置字體。

所以我決定創建一個幫助類,使得這個操作盡可能的簡單。使用方法:

FontHelper.applyFont(context, findViewById(R.id.activity_root), "fonts/YourCustomFont.ttf");
並且這行代碼會用來載入所有的基於TextView的文本組件(TextView、Button、RadioButton、ToggleButton等等),而無需考慮界面的布局層級如何。

標准(左)與自定義(右)字體的用法。

Standard (left) and Custom (right) fonts usage.

這是怎麼做到的?非常簡單:

public static void applyFont(final Context context, final View root, final String fontName) {
try {
if (root instanceof ViewGroup) {
ViewGroup viewGroup = (ViewGroup) root;
for (int i = 0; i < viewGroup.getChildCount(); i++)
applyFont(context, viewGroup.getChildAt(i), fontName);
} else if (root instanceof TextView)
((TextView) root).setTypeface(Typeface.createFromAsset(context.getAssets(), fontName));
} catch (Exception e) {
Log.e(TAG, String.format("Error occured when trying to apply %s font for %s view", fontName, root));
e.printStackTrace();
}
}
正如你所看到的,所需要做的僅僅是將基於TextView的文本組件從布局中遍歷出來而已。

⑶ 如何在Android開發中使用自定義的字體庫

Android系統默認支持三種字體,分別為:「sans」, 「serif」, 「monospace",除此之外還可以使用其他字體文件(*.ttf)
方法一:XML中使用android默認字體: android:typeface
方法二:在Android中可以引入其他字體,首先要將字體文件保存在assets/fonts/目錄下
//得到TextView控制項對象 TextView textView =(TextView)findViewById(R.id.custom);
//將字體文件保存在assets/fonts/目錄下,創建Typeface對象
Typeface typeFace =Typeface.createFromAsset(getAssets(),"fonts/HandmadeTypewriter.ttf");
//使用字體
textView.setTypeface(typeFace);

⑷ android字體包怎麼弄

先下載安卓字體:

http://www.cr173.com/down.asp?id=36990

再進行Root:下載SuperOneClick(PC軟體),連接USB,安裝好驅動程序,運行SuperOneClick。

安裝ROotExplorer文件管理器

http://www.an.com/soft_90800.html#

接下來就要把字體文件復制進去了

⑸ android 怎麼加入字體包

android 加入字體包


工具

Eclipse

方法

  1. 在Eclipse中新建Android工程fontdemo

    代碼只有MainActivity.javaCustomFontTextView.java

    布局文件是activity_main.xml。assets下面是使用的字體庫文件

    ⑹ androidStudio中怎麼載入字體資源

    首先在androidstudio中找到assets文件夾 , (位於serc/main/java下,與res在同一個文件裡面) , 找到之後將字體文件(*.ttf)放入這個文件夾下(當然為了規范起見,我們可以再asseets下建立一個font文件夾表示存放字體文件). 如圖所示:

    其中context.getAssets()方法是用於載入assets文件夾 , "OpenSans-Regular.ttf"是字體文件的相對路徑 , 細心的同學可以看見我的assert中有兩個相同的字體文件 ,

    其中一個在font文件夾下面 , 如果想要載入這個文件夾就要使用:

    Typeface tf = Typeface.createFromAsset(getAssets(), "font/OpenSans-Regular.ttf"); 在View中顯示這種字體的使用就用setTypeface就行了

    ⑺ Android:從SD卡中載入自定義的字體

    找了下資料
    這個應該可以static
    Typeface
    createFromFile(File
    path)
    //靜態方法,從文件系統構造一個字體,這里參數可以是sdcard中的某個字體文件

閱讀全文

與android載入字體相關的資料

熱點內容
客戶端框架源碼 瀏覽:206
python自動辦公能幹嘛 瀏覽:873
程序員追愛 瀏覽:252
程序員邏輯故事 瀏覽:768
加密icsot23i2c 瀏覽:713
你們有什麼好的解壓軟體 瀏覽:607
常州空氣壓縮機廠家 瀏覽:241
安卓如何關閉app內彈出的更新提示 瀏覽:409
e4a寫的app怎麼裝蘋果手機 瀏覽:201
海立壓縮機海信系 瀏覽:210
社保如何在app上合並 瀏覽:220
小米加密照片後綴 瀏覽:236
我的世界網易手機怎麼創伺服器 瀏覽:978
載入單頁源碼 瀏覽:930
阿里雲伺服器seo 瀏覽:777
海洋斗什麼時候上線安卓 瀏覽:86
中行app如何查每日匯款限額 瀏覽:840
輸入伺服器sn是什麼意思 瀏覽:725
sha1演算法java 瀏覽:90
asp代碼壓縮 瀏覽:851