绘图中的drawRect
rect參數:代表的是當前view的bounds
1 為什么要在drawRect方法里面寫繪圖代碼
因為只有在這個方法中才能獲取到當前view相關的圖形上下文對象
有了這個圖形上寫文對象后才能進行繪圖操作
2 為什么是在這個方法中能夠獲取圖形上下文?
圖形上下文對象不是我們自己創(chuàng)建的,僅僅是獲取,圖形上下文對象是系統(tǒng)創(chuàng)建的
而且只萌在drawRect方法中獲取
3 注意:我們不能直接去調用一個view的drawRect:方法?
因為這個方法的執(zhí)行,在當前的view第一次顯示的時候,會調用一次,是系統(tǒng)執(zhí)行的
系統(tǒng)執(zhí)行的時候,可以保證里面的圖形上下文對象真的創(chuàng)建好了
如果手動直接調用,自己控制,并不能保證里面的圖形上下文對象創(chuàng)建ok
4 如果需要調用drawRect方法:
可以通過
[self setNeedsDisplay]; //直接全部重繪
[self setNeedsDisplayInRect:(cgRect)]; ?//直接把指定區(qū)域里面的內容重繪,讓自定義view執(zhí)行重繪操作
我們調用這兩個方法,系統(tǒng)內部會去調用view的drawRect方法實現(xiàn)重繪
轉載于:https://www.cnblogs.com/ritian/p/iOS.html
總結
以上是生活随笔為你收集整理的绘图中的drawRect的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用泛型实现参数化类型
- 下一篇: 安卓MP3播放器开发实例(1)之音乐列表