日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

UIView类绘图出现错误提示

發布時間:2023/12/18 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 UIView类绘图出现错误提示 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一:問題:

Jan 16 15:49:53? CUBOT Band Ⅲ[2082] <Error>: CGContextSetLineWidth: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.

Jan 16 15:49:53? CUBOT Band Ⅲ[2082] <Error>: CGContextSetLineJoin: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.

Jan 16 15:49:53? CUBOT Band Ⅲ[2082] <Error>: CGContextSetLineCap: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.

Jan 16 15:49:53? CUBOT Band Ⅲ[2082] <Error>: CGContextSetMiterLimit: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.

Jan 16 15:49:53? CUBOT Band Ⅲ[2082] <Error>: CGContextSetFlatness: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.

?

二:解決:

1:設置,傳說中是由于:一般式iOS6的時候使用這種方式,iOS7,8也兼容,但是到了iOS9就報了警告。最后驗證,沒鳥用.PS:至少我遇到的問題不是由于它引起的

2:原因簡單分析: drawView方法調用不合理.?使用UIView繪圖,只能在drawRect:方法中獲取相應的contextRef并繪圖。如果在其他方法中獲取將獲取到一個invalidate的ref并且不能用于畫圖。drawRect:方法不能手動顯示調用,必須通過調用setNeedsDisplay 或者 setNeedsDisplayInRect ,讓系統自動調該方法。

由于此處同事是使用了property 屬性的set方法先去初始化數據的并調用了UIBezierPath去繪圖,再去調用drawView,所以造成這樣的錯誤提示,其實程序并不會因此而奔潰,但是這非常影響畫圖速度,造成一定程度上的卡頓,給用戶體驗不好;

1:同事的錯誤做法:(同事寫的)

?

?

?

2:之后我改進了一下

?

?

?

3:錯誤提示消失了

?

轉載于:https://www.cnblogs.com/nelsen-chen/p/6290077.html

總結

以上是生活随笔為你收集整理的UIView类绘图出现错误提示的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。