मैं इस काम कर कोड है:मेरा CGGradient प्रीसेट UIColor के साथ क्यों काम नहीं कर रहा है?
NSMutableArray *shadowColors = [NSMutableArray arrayWithCapacity:2];
color = [UIColor colorWithRed:0 green:0 blue:0 alpha:1]; // Declaration using components
[shadowColors addObject:(id)[color CGColor]];
color = [UIColor colorWithRed:1 green:1 blue:1 alpha:0.0]; // Declaration using components
[shadowColors addObject:(id)[color CGColor]];
CGColorSpaceRef space = CGColorSpaceCreateDeviceRGB();
CGGradientRef gradient = CGGradientCreateWithColors(space, (CFArrayRef)shadowColors, NULL);
CGColorSpaceRelease(space);
CGFloat sw = 10.0; // shadow width
CGPoint top1 = CGPointMake(x, y+width/2.0);
CGPoint top2 = CGPointMake(x + sw, y+width/2.0);
CGPoint side1 = CGPointMake(x+width/2.0, y);
CGPoint side2 = CGPointMake(x+width/2.0, y+sw);
CGContextDrawLinearGradient(c, gradient, top1, top2, 0);
CGContextDrawLinearGradient(c, gradient, side1, side2, 0);
CGGradientRelease(gradient);
रंग घोषणाओं हिस्सा मैं में दिलचस्पी रखता हूँ कर रहे हैं, लाइनों 2 और 4. जब मैं उन्हें के रूप में दिखाया, वे तो बस अच्छा काम की घोषणा, लेकिन अगर मैं उन दो की जगह बराबर के साथ लाइनें (मैंने सोचा, कम से कम) [UIColor blackColor]
और [UIColor clearColor]
तो मेरे ग्रेडियेंट गायब हो गए। मेरे द्वारा उपयोग किए जाने वाले रंगों में कोई फर्क नहीं पड़ता है, मैं greenColor
और redColor
का उपयोग कर सकता हूं और वे अभी भी काम नहीं करते हैं।
क्या मुझे कुछ याद आ रही है या क्या यह ऐप्पल के ढांचे में एक बग है?
कोड कि काम नहीं करता है। और यह सिर्फ पहला खंड है, बाकी सब कुछ वही है।
NSMutableArray *shadowColors = [NSMutableArray arrayWithCapacity:2];
color = [UIColor blackColor];
[shadowColors addObject:(id)[color CGColor]];
color = [UIColor clearColor];
[shadowColors addObject:(id)[color CGColor]];
क्या आप * बिल्कुल * दिखा सकते हैं कि आपका कोड कैसा दिखता है जो काम नहीं करता है? पीएस: आप आईडी पर कुछ क्यों डालते हैं? यह समझ में नहीं आता है। – Eiko
आईडी पर कास्टिंग एक 'असंगत सूचक प्रकार' चेतावनी से गुजरने वाले तर्क से दूर है। – kubi
ओह, और मैंने गैर-कार्य कोड के साथ अपना प्रश्न अपडेट किया। – kubi