[英]How to display dashed lines in objective-c?
我有這段代碼來顯示帶有虛線的網格。 在下面的iphone 5上運行時,它顯示正常,但是如果我在iphone 5s上運行該應用程序,則沒有網格。 我在iPhone Simulator和真實設備上進行了測試,結果相同。
這是代碼:
if (self.dashLongitude) {
CGFloat lengths[] = {3.0, 3.0};
CGContextSetLineDash(context, 0.0, lengths, 2);
}
//other stuff here
CGContextSetLineDash(context, 0, nil, 0);
所以任何人都可以幫助?
編輯:大家好,我使用這里發布的相同代碼解決了問題,但使用的方法不同。 因此,我現在有兩種方法:一種僅用於繪制網格,另一種用於繪制數據線並最終使所有內容正常工作。
代碼看起來不錯。
當我查看代碼時,我看到您在上下文中設置了nil
。 nil
用於刪除虛線。
嘗試使用
CGFloat dash[] = {2.0, 2.0};
CGContextSetLineDash(context, 0.0, dash, 2);
在您要創建或提供筆划的位置(下方)。
CGContextSetLineDash(context, 0, NULL, 0);
用於刪除該破折號圖案。
不用在CGContextSetLineDash
中設置nil
,只需將代碼包裝到CGContextSaveGState
/ CGContextRestoreGState
即可在應用破折號之前保留上下文狀態:
CGContextSaveGState(context);
CGFloat dash[] = {2.0, 2.0};
CGContextSetLineDash(context, 0.0, dash, 2);
// Draw some lines here
CGContextRestoreGState(context);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.