iOS5 में अलग से वर्गीकृत किया UITableViewCell
नियमित whiteColor
रंग के बजाय tableCellGroupedBackgroundColor
रंग का उपयोग करता नतीजतन आईओएस 5 में है, अपने कस्टम कोशिकाओं की पृष्ठभूमि की UITableViewCell
(डिफ़ॉल्ट, उपशीर्षक के लोगों के साथ मेल नहीं खाता , वैल्यू 1, वैल्यू 2 स्टाइल सेल)।UITableViewCell पृष्ठभूमि रंग बनाम iOS4
यह सुनिश्चित करने का सबसे अच्छा तरीका क्या है कि उसी पृष्ठभूमि रंग का उपयोग कस्टम UITableViewCell
और डिफ़ॉल्ट UITableViewCell
(और UILabel
और अन्य तत्वों से संबंधित) में किया जाता है) - w.r.t. आईओएस 4 और आईओएस 5 दोनों?
नोट: संपादक में मैं tableCellGroupedBackgroundColor
के नाम से एक नया रंग देख सकता हूं, लेकिन इस रंग को प्रोग्रामेटिक रूप से प्राप्त करने के लिए कोई श्रेणी/विधि उपलब्ध नहीं है।
संपादित करें:
आप तकनीक निम्नलिखित अपने सेल पर नियंत्रण की पृष्ठभूमि का रंग बदलने के लिए उपयोग कर सकते हैं, लेकिन इन-मामले कस्टम कोशिकाओं की, तुम कैसे ओएस के आधार पर उपयुक्त पृष्ठभूमि रंग सेट कर सकते हैं (आईओएस 4 बनाम आईओएस 5)?
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
for (UIView* view in cell.contentView.subviews) {
view.backgroundColor = cell.backgroundColor;
}
}
सबसे आसान समाधान (मेरे वर्तमान कार्यान्वित): यह सिर्फ यकीन है कि मेरी सभी कोशिकाओं सफेद पृष्ठभूमि है बनाता है, ओएस पर ध्यान दिए बिना। किसी भी तरह, मुझे cell.contentView.subviews
पर सफेद रंग लागू करने की आवश्यकता नहीं है।
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
[cell setBackgroundColor:[UIColor whiteColor]];
}
यह कोई अच्छा विचार नहीं है कि पृष्ठभूमि के लिए पारदर्शी रंग सेटिंग किसी भी दृश्य को धीमा कर दें। यदि आपको अपारदर्शी में पृष्ठभूमि सेट करने की तुलना में ढाल पृष्ठभूमि की आवश्यकता नहीं है। ऐप्पल ने यही सिफारिश की है और यह भी मेरा अनुभव है ... –