मैंने इसे स्टोरीबोर्ड में एक प्रोटोटाइप सेल का उपयोग करके iOS7 में काम किया। मेरे पास मेरे कस्टम सेक्शन के हेडर दृश्य में एक बटन है जो कि स्टोरीबोर्ड में स्थापित एक सेगमेंट को ट्रिगर करता है।
Tieme के समाधान के साथ शुरू करें
जैसा कि पेड्रोएम बताते हैं, इसके साथ समस्या यह है कि अनुभाग हेडर को टैप करने से अनुभाग का पहला सेल चयनित हो जाता है।
जैसा कि पॉल वॉन बताते हैं, यह पूरे सेल के बजाय सेल के contentView को वापस करके तय किया गया है।
हालाँकि, जैसा कि ऑनर्स बताते हैं, कहा जाता है कि सेक्शन हेडर पर एक लंबा प्रेस ऐप को क्रैश कर देगा।
इसका उपाय यह है कि contentView से किसी भी जेस्चर को पहचाना जाए।
-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
static NSString *CellIdentifier = @"SectionHeader";
UITableViewCell *sectionHeaderView = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
while (sectionHeaderView.contentView.gestureRecognizers.count) {
[sectionHeaderView.contentView removeGestureRecognizer:[sectionHeaderView.contentView.gestureRecognizers objectAtIndex:0]];
}
return sectionHeaderView.contentView; }
यदि आप अपने सेक्शन के हेडर दृश्यों में इशारों का उपयोग नहीं कर रहे हैं, तो यह थोड़ा हैक करने के लिए लगता है।