ios開發之在iOS應用中載入自定義字型顯示

2022-09-11 15:18:29 字數 2147 閱讀 6000

眾說周知,在ios系統提供的字型是有限的,我們可以利用

uifont

類取出檢視ios系統支援的所有字型型別。

在此以uitableview列表來展示iphone支援的所有字型型別。-(

nsinteger

)numberofsectionsintableview

:(uitableview

*)tableview-(

nsinteger

)tableview

:(uitableview

*)tableview numberofrowsinsection

:(nsinteger

)section-(

nsstring

*)tableview

:(uitableview

*)tableview titleforheaderinsection

:(nsinteger

)section-(

nsinteger

)tableview

:(uitableview

*)tableview sectionforsectionindextitle

:(nsstring

*)title atindex

:(nsinteger

)index-(

uitableviewcell

*)tableview

:(uitableview

*)tableview cellforrowatindexpath

:(nsindexpath

*)indexpath

// configure the cell.

cell

.textlabel

.textcolor

=indexpath

.row %2

?[uicolor

orangecolor]:

[uicolor

magentacolor

];//字型家族名稱

nsstring

*familyname=[[

uifont

familynames

]objectatindex

:indexpath

.section

];//字型家族中的字型庫名稱

nsstring

*fontname =[[

uifont

fontnamesfo***milyname

:[[uifont

familynames

]objectatindex

:indexpath

.section

]]objectatindex

:indexpath

.row

];cell

.textlabel

.font =[

uifont

fontwithname

:fontname size

:14.0f

];//查詢微軟雅黑字型

if([

fontname isequaltostring

:@"microsoftyahei"

])cell

.textlabel

.text =[

nsstring

stringwithformat

:@"%@ - %@"

,familyname

,fontname

];return

cell;}

這樣可以獲得系統所支援的所有字型型別。

但問題是,設計師在設計ui效果圖時經常會使用其他的字型,怎麼樣才能使我們的應用支援這些字型顯示了?

解決方法其實也很簡單,  你自需如下幾步就可以實現自定義的字型顯示了。(在此以常用的 微軟雅黑 字型 為例)

1.   找到你需要的字型庫.ttf檔案,匯入到專案工程中

2.   在info.plist檔案中,加入自定義字型庫支援的說明

3.   在系統提供的uifont類中,查詢到你需要的字型庫再設定到需要顯示的控制項上即可。

現在在列表中已經能看到我們自定義的字型庫 

微軟雅黑 (microsoftyahei)

。  在列表中顯示的效果圖如下所示:

就這麼簡單!

ios開發之在iOS應用中載入自定義字型顯示

眾說周知,在ios系統提供的字型是有限的,我們可以利用 uifont類取出檢視ios系統支援的所有字型型別。在此以uitableview列表來展示iphone支援的所有字型型別。nsinteger numberofsectionsintableview uitableview tableview n...

ios開發中,加入Google Analytics

直接挑乾的來!標頭檔案需要加入的東西 add header file import gai.h import gaifields.h import gaidictionarybuilder.h add member id m tracker mm檔案需要加入的東西 void viewdidload ...

iOS 開發之懶載入

懶載入,其實就是延時載入。它將物件的建立延遲到了需要物件的時候,這樣就減少了記憶體開銷,但是會降低效率。其實,對於 oc 來說。懶載入就是利用 property 的特性,為屬性生成 get 和 set 方法,懶載入就是呼叫它的 get 方法。如果不重寫它的 get 方法的話,它會報錯,原因是呼叫如下...