我試圖在UITabBarItem標題標籤上啓用文本字串(增加字母間距)。但是爲UITabBarItem提供NSKernAttributeName屬性沒有任何區別。然而,其他兩個屬性正在工作:NSForegroundColorAttributeName,NSFontAttributeName。我已經嘗試使用系統字體和另一種字體:SFUIDisplay-Regular。無法啓用UITabBarItem上的字母間距(字距)
和是的,我也嘗試使用UIControlStateNormal和UIControlStateSelected。
下面是代碼:
for (UITabBarItem *item in self.tabBar.items)
{
[item setTitleTextAttributes: @{
NSKernAttributeName: @(4.0f), /* does nothing */
NSForegroundColorAttributeName: [AppStyle whiteColor],
NSFontAttributeName: font
}
forState:UIControlStateNormal];
的NSKernAttributeName屬性沒有任何效果。
我也試過在外觀上做,當應用程序加載,這樣的:
NSDictionary *attributes = @{
NSKernAttributeName: @(4.0f) /* does nothing */
};
[[UITabBarItem appearance] setTitleTextAttributes: attributes
forState: UIControlStateNormal];
[[UITabBarItem appearance] setTitleTextAttributes: attributes
forState: UIControlStateSelected];
其中也什麼都不做。
我唯一能夠得到NSKernAttributeName工作的地方是在UILabel上使用setAttributedText。
你們知道爲什麼設置其他標題文本屬性工作在UITabBarItem,但NSKernAttributeName不?
你找到了你的問題的答案? – MPG
還沒有。現在我不得不在UITabBarItems上生活。 – Alex