2009-02-04 6 views
15

अपने iPhone परियोजना में एक तरीका है, मैं एक UIView जहाँ मैं drawRect तरीका लागू मिल गया है इस संदर्भ का उपयोग कर लाइनों, छवियों और ग्रंथों। समस्या यह है कि जब मैं इस दृश्य का पुन: उपयोग करता हूं, तो संदर्भ रीसेट नहीं होता है। क्या कोई तरीका है जिसे मैं संदर्भ को किसी भी तरह रीसेट करने के लिए कॉल कर सकता हूं?CGContext वहाँ वर्तमान संदर्भ रीसेट करने के लिए

+0

आप "संदर्भ रीसेट" से क्या मतलब है? –

+0

मेरा मतलब है कि जब मेरा विचार फिर से आकर्षित होता है, तो यह सब उलझन में है, जैसे कि यह चीजें याद करता है जैसे कि मैंने पिछली बार – rustyshelf

उत्तर

15

आप CGContextSaveGState (संदर्भ) और CGContextRestoreGState (संदर्भ) को देखना चाहेंगे। वे आपको संदर्भ की वर्तमान स्थिति को धक्का और पॉप करने देंगे।

यदि आपका विचार 'उलझन' हो रहा है, तो अपने दृश्य की सामग्री मोड सेटिंग देखें।

1

तुम भी उपयोग कर सकते हैं CGContextClearRect(context, CGRectMake(0, 0, width, height));

+1

पर कुछ स्थानांतरित किया था, यह स्पष्ट रंग के साथ संदर्भ भरता है, लेकिन किसी संदर्भ स्थिति की जानकारी को रीसेट नहीं करता है (जैसे कि क्लिपिंग, आदि) – pauln