我在UIView
上畫了一條線。它工作正常。我做了同樣的事情,在這裏描述:[問題]:http://stackoverflow.com/questions/2595446/drawing-an-image-is-completely-out如何清除UIView上的繪圖線
現在我需要擦除這些行。擦除意味着我在觸摸屏上移動手指後需要擦除它。就像橡皮擦一樣。我該怎麼做?
我在UIView
上畫了一條線。它工作正常。我做了同樣的事情,在這裏描述:[問題]:http://stackoverflow.com/questions/2595446/drawing-an-image-is-completely-out如何清除UIView上的繪圖線
現在我需要擦除這些行。擦除意味着我在觸摸屏上移動手指後需要擦除它。就像橡皮擦一樣。我該怎麼做?
如果您要求在用戶觸摸它時擦除整行,比我不知道如何實現這一點,但是如果您要求擦除用戶觸及的部分線條,則比您更容易可以繪製一條顏色線,您正在使用該線繪製線條,以此方式您將獲得橡皮擦效果。
您必須致電setNeedsDisplayInRect:
(UIView)將行的矩形設置爲無效。只有這個矩形將被重繪,直到下一個繪圖週期。
確保您可以請求的drawRect:
方法中有一個標記,用於標識是否應繪製該線條。
[link](http://craigcoded.com/2010/12/08/erase-top-uiview-to-reveal-content-underneath/) Theck that link。 和 請檢查此代碼; //第一次進來,我們從純色開始 CGContextSetFillColorWithColor(context,maskColor.CGColor); CGContextFillRect(context,rect) 如果我在這裏加載我的繪圖,那麼它的工作很酷。我如何將我的圖紙加載到這裏。 – Gayan
他們也是背景圖片。它在底部UIView。我在第二個視圖上畫一條線。它是在第一個視圖之上創建的。所以'' – Gayan
我認爲你可以繪製一個線的alpha值爲0,並與它下面的線相交。你有沒有嘗試過? – Robin
CGContextTranslateCTM(context,0,rect.size.height); CGContextScaleCTM(context,1.0,-1.0); CGContextDrawImage(context,rect,imageRef); CGImageRelease(imageRef); \t \t \t CGContextTranslateCTM(context,0,rect.size.height); \t \t \t CGContextScaleCTM(context,1.0,-1.0);} [erasImage drawAtPoint:lastPoint blendMode:kCGBlendModeDestinationOut alpha:eraseSpeed]; CGContextSetFillColorWithColor(context,[UIColor redColor] .CGColor); CGContextFillRect(context,rect); } \t imageRef = CGBitmapContextCreateImage(context); }' – Gayan