यह पता लगाने की कोशिश कर रहा हूं कि मैं यहां क्या कर रहा हूं। कई चीजों की कोशिश की है, लेकिन मैं स्क्रीन पर उस छद्म आयत को कभी नहीं देखता हूं। अभी, मैं बस इतना करना चाहता हूं - बस स्क्रीन पर एक आयत खींचें।शुरुआती आईफोन प्रश्न: एक आयताकार ड्राइंग। मैं क्या गलत कर रहा हूं?
मुझे सबकुछ पर "अमान्य संदर्भ" मिल रहा है लेकिन CGContextSetRGBFillColor()। इसके बाद संदर्भ प्राप्त करना मेरे लिए बहुत गलत लगता है, लेकिन मैं घर पर नहीं देख रहा हूं कि मैं कल रात का उपयोग कर रहा था।
क्या मैंने कुछ और गड़बड़ कर ली है? मैं वास्तव में इस आज रात कम से कम कुछ किया प्राप्त करना चाहते हैं ...
- (id)initWithCoder:(NSCoder *)coder
{
CGRect myRect;
CGPoint myPoint;
CGSize mySize;
CGContextRef context;
if((self = [super initWithCoder:coder])) {
NSLog(@"1");
currentColor = [UIColor redColor];
myPoint.x = (CGFloat)100;
myPoint.y = (CGFloat)100;
mySize.width = (CGFloat)50;
mySize.height = (CGFloat)50;
NSLog(@"2");
// UIGraphicsPushContext (context);
NSLog(@"3");
CGContextSetRGBFillColor(context, 1.0, 0.0, 0.0, 1.0);
context = UIGraphicsGetCurrentContext();
CGContextSetFillColorWithColor(context, currentColor.CGColor);
CGContextAddRect(context, myRect);
CGContextFillRect(context, myRect);
}
return self;
}
धन्यवाद,
शॉन।
इसके अलावा, आपको सीधे drawRect को कॉल नहीं करना चाहिए, लेकिन इसके बजाय setNeedsDisplay को कॉल करें, इसलिए ओएस इसे उठाता है और बाद में दृश्य को फिर से चलाता है। – pgb
हां। ये सही है। –
ठीक है, तो मुझे सामान खींचने के लिए initWithCoder() का उपयोग नहीं करना चाहिए। लेकिन क्या वह वास्तव में मेरे प्रश्न का उत्तर देता है? सीजी कोड को दूसरे कार्य में ले जा रहा है जिससे आयताकार खींचा जा सकता है या नहीं? और ड्रॉरेक्ट का उपयोग करने/उपयोग करने के लिए, अब आप मुझे भ्रमित करने में कामयाब रहे हैं। क्या आप कह रहे हैं कि मुझे drawRect में अपने आयत के लिए सभी पैरामीटर डालना चाहिए? यह सही प्रतीत नहीं होता है, या तो - अगर मैं एक से अधिक आयतों को आकर्षित करना चाहता हूं तो क्या होगा? यदि वहां एक साधारण उदाहरण ऐप है जो * बस * आयताकार या सर्कल या कुछ खींचता है, तो मैं इसे देखना चाहता हूं। शॉन। –