2012-02-12 19 views
10

如果我創建UILabel,UITextField和UITextView,然後將它們設置爲具有相同的佈局樣式 - 例如,沒有背景顏色,白色文本和大小爲18的Courier字體 - UILabel和UITextField外觀相同,而UITextView看起來不同 - 字體看起來更薄。可以使UITextField和UITextView呈現字體相同,還是隻是不同?

我拍了這個問題的截圖,但是我沒有足夠的聲望把它放在這裏。所以相反,click here to see my example in action

我敢肯定,我讀的地方,UITextView使用不同的渲染機制的字體(CoreText,也許?),但無論是控件絕對看起來不同。

那麼,有什麼辦法可以使UITextViews呈現像UITextFields/UILabels這樣的字體,反之亦然?

回答

4

迷人的問題。到目前爲止,除了Courier之外,我還沒有能夠複製它,但它肯定發生在Courier。我會在bugreporter.apple.com上打開一個缺陷。

不過,爲了幫助您繼續前進,我建議切換到Courier New,在那裏我沒有看到此問題,並且應該非常接近您的原始目標。

+0

老鼠!你的意思是我的字體選擇不幸運? :)我現在將使用Courier New,並按照您的錯誤報告建議。謝謝! – FizzBuzz 2012-02-12 19:49:30

+1

嗯...我只是嘗試將UILabel更改爲Courier New,它看起來與Courier中的UITextView完全相同 - 幾乎像UITextView拒絕使用Courier,而是使用Courier New進行呈現! – FizzBuzz 2012-02-12 19:56:56

0

我與Raleway字體有類似的問題。我在我的應用程序中使用了Raleway-Bold.ttf(PostScript名稱:Raleway-Bold)和Raleway-Regular.ttf(PostScript名稱:Raleway)。當這些字體中的兩個被添加到項目中時,我無法在UITextView中繪製Raleway-Bold(通過以編程方式設置字體或使用FontReplacer在IB中繪製)。我在UITextView中結束了Raleway-Regular,UILabel沒有問題。當我刪除Raleway-Regular時,文本視圖和標籤都沒有問題。

我需要做的是在UITextView上繪製Raleway-Bold,但不會從Regular中辭職,而是將Raleway-Regular的PostScript名稱改爲其他名稱。在我的情況下,它是Raleway-Reg。這是一個修復:)

相關問題