![](/img/trans.png)
[英]drawInRect:withFont:lineBreakMode:alignment:' is deprecated: warning
[英]Is there something faster than -drawInRect:withFont:lineBreakMode:alignment:?
Shark告訴我,這種方法會受到巨大的性能影響。 就像我表格中的80%一樣。 我所做的只是每個單元格繪制兩個標簽(每頁約8個)。 滾動期間。 我drawInRect:用那個。
有更好的方法嗎? 喜歡直接畫到某層?
您可以使用以下代碼快速繪制圖形:
CGContextSetStrokeColorWithColor(context, strokeColor);
CGContextSetFillColorWithColor(context, strokeColor);
CGContextSelectFont(context, "Helvetica", fontSize, kCGEncodingMacRoman);
CGContextSetTextDrawingMode(context, kCGTextFill);
CGContextSetTextPosition(context, 0.0f, round(fontSize / 4.0f));
CGContextShowText(context, [text cStringUsingEncoding:NSMacOSRomanStringEncoding], strlen([text cStringUsingEncoding:NSMacOSRomanStringEncoding]));
但是,iPhone上的Helvetica字體的Mac Roman編碼缺少許多非英文字符的符號,所以我認為你堅持使用NSString繪圖方法,除非你想在iPhone OS 3.2中升級到Core Text。
要檢查並查看您的字符串是否可以使用Mac Roman字符集表示,請使用以下內容:
if ([text canBeConvertedToEncoding:NSMacOSRomanStringEncoding])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.