2012-09-10 11 views
8

उद्देश्य-सी में कोको टच के साथ लक्ष्य छवि बनाएं, मैं लक्ष्य छवि को आकर्षित करने के लिए इष्टतम तरीका ढूंढ रहा हूं, (यानी मंडलियों के भीतर मंडल, पर्याप्त सरल), और उसके बाद उपयोगकर्ता का स्पर्श दर्ज किया गया है छवि, (संभावित रूप से एक एक्स या + चिह्न के रूप में), और अधिक महत्वपूर्ण बात, बाद में पुनः चित्रण के लिए स्मृति में।कोको टच

मैं लंबे समय तक लंबे समय तक अपनी अंगुली को नीचे रखने के लिए एक लूप का उपयोग करूँगा, जिसे मैंने CoffeeShopped लेख और स्रोत के साथ पढ़ने और प्रयोग करके सीखा है।

उत्तर

1

UIView का एक उपवर्ग बनाएँ और

- (void)drawRect:(CGRect)rect { 
    CGRect circleRect = self.bounds; 

    CGFloat circleWidth = circleRect.size.width/5.0; 
    CGContextRef context = UIGraphicsGetCurrentContext(); 
    CGContextSetFillColorWithColor(context, [[UIColor redColor] CGColor]); 
    CGContextFillEllipseInRect(context, circleRect); 

    circleRect = CGRectInset(circleRect, circleWidth, circleWidth); 
    CGContextSetFillColorWithColor(context, [[UIColor whiteColor] CGColor]); 
    CGContextFillEllipseInRect(context, circleRect);   

    circleRect = CGRectInset(circleRect, circleWidth, circleWidth); 
    CGContextSetFillColorWithColor(context, [[UIColor redColor] CGColor]); 
    CGContextFillEllipseInRect(context, circleRect); 
} 

आकर्षित करेंगे

enter image description here

आप स्थापित करना चाहिए आप [UIColor clearColor] के विचारों backgoundColor रहे यह किनारों के आसपास काले नहीं बनाने के लिए drawRect

लागू।

आप इसे एक लूप में भी ट्विक कर सकते हैं लेकिन यह सबसे सरल उदाहरण कोड है जिसे मैं दिखा सकता हूं।

नोट: मैं रंग पुन: उपयोग नहीं किया है, चाप/nonarc कोड की सादगी के लिए

-1

आप उस छवि को पुन: उपयोग और यह पुनः बनाने (उदाहरण के लिए - जब उपयोगकर्ता स्पर्श यह) चाहते हैं आप के रूप में है कि ड्राइंग कैश चाहिए छवि।

1) अपने लक्ष्य ड्रा (नीचे उल्लेख किया)
2) वर्तमान संदर्भ

UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); 

3 से छवि बनाएं) कि छवि और अगले समय की बचत करें

- (void)drawRect:(CGRect)rect { 
    if(image == nil) { 
     image = [self drawTargetImage]; //use code that mentioned below to create image 
    } 
    [image drawAtPoint:CGPointMake(10, 10)]; 
} 
यह पुन: उपयोग
संबंधित मुद्दे