का कारण बनता है मैं अपने BEMSimpleLineGraph को कॉन्फ़िगर कर रहा हूं और रैखिक ढाल छायांकन को छोड़कर सफलतापूर्वक ऐसा करने में सक्षम हूं।CGContextDrawLinearGredient EXC_BAD_ACCESS
let colorspace:CGColorSpaceRef = CGColorSpaceCreateDeviceRGB()
let num_locations:size_t = 2
var locations: [CGFloat] = [0.0, 1.0]
var components: [CGFloat] = [
1.0, 1.0, 1.0, 1.0,
1.0, 1.0, 1.0, 0.0
]
self.myGraph.gradientBottom = CGGradientCreateWithColorComponents(colorspace, components, locations, num_locations)
सब कुछ सही ढंग बनाता है लेकिन BEMLine.m फ़ाइल में EXC_BAD_ACCESS स्मृति त्रुटि निकलती है: प्रदान की उदाहरण Obj सी परियोजना
CGColorSpaceRef colorspace = CGColorSpaceCreateDeviceRGB();
size_t num_locations = 2;
CGFloat locations[2] = { 0.0, 1.0 };
CGFloat components[8] = {
1.0, 1.0, 1.0, 1.0,
1.0, 1.0, 1.0, 0.0
};
self.myGraph.gradientBottom = CGGradientCreateWithColorComponents(colorspace, components, locations, num_locations);
में इस कोड को संदर्भित और स्विफ्ट में यह करने के लिए इसे लिप्यंतरण के बाद शामिल है, इस लाइन
CGContextDrawLinearGradient(ctx, self.bottomGradient, CGPointZero, CGPointMake(0, CGRectGetMaxY(fillBottom.bounds)), 0);
मैंने सम्मिलित कर दिया obj सी हैडर को पाटने पर रोक, CoreGraphics ढांचा, फिर की विशेषताओं फलक में नीचे रंग सक्षम जोड़ा स्टोरीबोर्ड में शानदार दृश्य नियंत्रक, सभी मानकों के सही डेटा प्रकार सुनिश्चित करने के लिए ऐप्पल के विकास पृष्ठों का संदर्भ दिया, लेकिन अभी भी सूख रहा हूं। त्रुटि समानताओं की जांच में, मैंने यह भी महसूस किया है कि शीर्ष रैखिक ढाल को खींचने की कोशिश करने के साथ ही वही त्रुटि आती है। गलती को आकर्षित करने की कोशिश कर रहे ओब्जे-सी कोड में त्रुटि झूठ लगती है, लेकिन फिर से मुझे क्या करना है इसके नुकसान में हूं।
दिमाग पूरी क्रैश रिपोर्ट ('.crash' फ़ाइल) साझा करना? –
@ JohannesWeiß प्रतिक्रिया के लिए धन्यवाद! मैंने इसे यहां आपके लिए अपलोड किया है: (https://drive.google.com/file/d/0ByFqolB5nSXKU1JhYjlYVlpjWTQ/view?usp=sharing) –
मुझे एक नज़र थी और ऐसा लगता है कि 'self.bottomGradient' शून्य/NULL नहीं है लेकिन कुछ स्मृति को इंगित कर रहा है जिसमें वैध ढाल नहीं है। –