2011-10-17 7 views
6

willDisplayCell में UITableViewCell के रंग का काम क्यों सेट करता है लेकिन cellForRowAtIndexPath में नहीं?"willDisplayCell" में UITableViewCell के रंग का काम क्यों सेट करता है लेकिन "cellForRowAtIndexPath" में नहीं?

नोट्स:

  1. मैं इस कोड का उपयोग कर रहा एक सेल की पृष्ठभूमि का रंग सेट करने के लिए: [cell setBackgroundColor:[UIColor yellowColor]];
  2. काम करता है जब मैं यह विधि में डाल - (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
  3. काम नहीं करता है मैं में डाल - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
+1

क्या आप 'tableView: willDisplayCell: forRowAtIndexPath: 'और' tableView: cellForRowAtIndexPath: 'के अपने कार्यान्वयन पोस्ट कर सकते हैं? – titaniumdecoy

उत्तर

7

में UITableViewCell के लिए doco कहा गया है कि आप willDisplayCell में यह करने के लिए की जरूरत है: (UITableViewCell वर्ग refere से अंश नीचे एनसीई)। मुझे संदेह है कि तालिका कक्षों में सामग्री दृश्य और कई अन्य घटक होते हैं जो UIKit द्वारा 'प्रबंधित' प्रतीत होते हैं, यह सेलफॉररोएट इंडेक्सपैथ में सेट होने के बाद पृष्ठभूमि रंग के साथ अपनी खुद की चीज कर रहा है। आप अपनी पृष्ठभूमि को नियंत्रित करने के लिए तालिका दृश्य कक्ष की 'backgroundView' प्रॉपर्टी का भी उपयोग कर सकते हैं।

प्रलेखन अंश:

नोट: यदि आप (पृष्ठभूमि रंग संपत्ति UIView द्वारा घोषित के माध्यम से एक सेल की पृष्ठभूमि का रंग निर्धारित करके) एक सेल की पृष्ठभूमि का रंग बदलने के लिए आप tableView में यह करना चाहिए चाहते हैं: willDisplayCell: forRowAtIndexPath: प्रतिनिधि का तरीका और तालिका में नहीं दृश्य: सेलफोररोएट इंडेक्सपैथ: डेटा स्रोत का। समूह-शैली तालिका दृश्य में सेल्स के पृष्ठभूमि रंगों में परिवर्तन आईओएस 3.0 में प्रभाव डालते हैं जो ऑपरेटिंग सिस्टम के पिछले संस्करणों से अलग है। यह अब इसके बाहर के क्षेत्र के बजाय गोलाकार आयत के अंदर के क्षेत्र को प्रभावित करता है।

संबंधित मुद्दे