我正在爲iPhone和iPad製作通用應用程序。我知道有一個選項可以定義文本應該向下縮放到選定的點大小,但是當iPad上顯示文本時我需要向上縮放文本。那可能嗎?我有一個大小爲18分的標籤。考慮到文本的長度,這幾乎佔據了iPhone的整個寬度。但在iPad上,這不會是因爲屏幕尺寸的增加...如何製作字體比例
謝謝你的時間。
我正在爲iPhone和iPad製作通用應用程序。我知道有一個選項可以定義文本應該向下縮放到選定的點大小,但是當iPad上顯示文本時我需要向上縮放文本。那可能嗎?我有一個大小爲18分的標籤。考慮到文本的長度,這幾乎佔據了iPhone的整個寬度。但在iPad上,這不會是因爲屏幕尺寸的增加...如何製作字體比例
謝謝你的時間。
你可以循環的方法:
- (CGSize)sizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size lineBreakMode:(UILineBreakMode)lineBreakMode
,直到你得到一個匹配,佔用了兩條線,然後用以前的字體大小。似乎更快/更容易使用成語來爲iPad定義特定的尺寸。
我對通用應用程序有同樣的問題。
我確實設置了自動調整參數,以在界面生成器中直接縮放所有組件,但它沒有縮放字體大小以獲取新給定的屏幕空間。
我結束了更新用下面的代碼每個視圖的viewDidLoad
,通過視圖的部件基本上迭代和爲所有標籤加倍的pointsize(可爲按鈕做的一樣好):
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
for (UIView *component in self.view.subviews) {
if ([component isKindOfClass:[UILabel class]]) {
UILabel *labelToUpdate = (UILabel *) component;
[labeltoUpdate setFont:[labelToUpdate.font fontWithSize:labelToUpdate.font.pointSize*2]];
}
}
的應用程序現在可以很好地從iPhone擴展到iPad。
假設它會逐個縮小到iPad和iPhone,那麼讓字體尺寸更大一些呢?我沒有嘗試過,只是提供它作爲一個想法。 – dredful 2011-04-24 20:01:38