更新:iOS 4是主要玩家。如果你運行的是iOS 4 sim,那麼標籤的大小將返回0.00,因爲它從來沒有加載過......這改變了我的最後一個問題:「如果Xib是如何在iOS 4中找到字體大小的話加載不同的字體?或者...爲兩者加載工作字體,獲取大小,然後將其更改爲新的,如果iOS 5只是翻轉測試,會更好嗎?「UILabel pointSize總是返回0
後者看起來很明顯,但並不理想,因爲設計師進入Xib並且新字體更薄,因此我們必須將尺寸更改爲普通Helvetica(適用於iOS 4) 。如果在視覺上,設計師和我在設計時會看到錯誤的字體,這只是不理想。
也許我想到了這一點,但我希望如果可能的話,iOS嚮導可以回答xib-become-0在xib加載問題上的初始測試。
末----- -----更新
我想抓住從我的插座當前設置字體的pointsize和我有一個非常艱難的時期。
問題:iOS 4不支持我正在使用的字體。 iOS 5的確如此。
解決方案:調用一個獲取當前iOS級別的函數,如果是5,則返回完全相同的標籤並使用其字體類型。如果iOS 4,將其設置爲Helvetica並嘗試獲取其大小(在xib中設置)。
抓取大小是不可能的,它總是返回0.00(除了某些情況下,即將確定的情況,但...)原因並非來自延遲加載。加載視圖後,我只是在1秒的延遲後調用相同的函數(更改字體1)。
結果:
NSLogging「獲取字體爲XX」功能打印0.00之前的labelName.font.pointSize,打印完畢後,做它的大小。
奇怪的部分:儘管我無法手動找到它,無論我使用的是xHeight,pointSize還是lineHeight(frame.size.height太大,否則會這樣做),如果我簡單地返回字體對於iOS 5來說,它看起來很好,就好像它在某個地方找到了正確的價值。我很希望這可能不是私人的,但沒有發現。
問題不能延遲加載的東西零,因爲第二次延遲的方式比加載標籤所需的時間多(而且它們是可見的)。
現在重新啓動,感謝unfixable boostrap的事情。
感謝您的幫助!
我不是新到iOS,這是令人費解我有點