क्या कोई मुझे अन्य सभी दृश्यों के शीर्ष पर कोड में बनाए गए UIView को बनाने में मदद कर सकता है? जहां tableView मूल दृश्य है और subSelectionView मेरा कस्टम भाई बहन है, मैं इसे तालिका के शीर्ष पर बनाना चाहता हूं .. मेरे पास यह कोड नीचे है:अन्य सभी विचारों के शीर्ष पर UIView रखें
यह मेरे किया गया चयन करने के लिए पूर्ण स्रोत कोड है IeelectRowAtIndexPath :, कहां से मैं प्रोग्राम के रूप में UIView उदाहरण जोड़ने ..
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
// Execute upon selection
[tableView deselectRowAtIndexPath:indexPath animated:YES];
[[tableView viewWithTag:199]removeFromSuperview];
// Get the cell size
CGSize cellSize = [tableView cellForRowAtIndexPath:indexPath].frame.size;
// Contact Details Container
UIView *subSelectionView;
if(indexPath.row < [contacts count] - 6)
subSelectionView = [[UIView alloc]initWithFrame:CGRectMake(10, 0, (int)cellSize.width - 20, (int)cellSize.height + 130)];
subSelectionView.backgroundColor = [UIColor grayColor];
subSelectionView.layer.borderColor = [UIColor grayColor].CGColor;
subSelectionView.layer.borderWidth = 1;
subSelectionView.alpha = 0.9;
subSelectionView.tag = 199;
subSelectionView.layer.cornerRadius = 5.0;
// Contact Name Container
UIView *contactNameSubSelectionView;
if(indexPath.row < [contacts count] - 6)
contactNameSubSelectionView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, (int)cellSize.width - 20, (int)cellSize.height)];
contactNameSubSelectionView.backgroundColor = [UIColor grayColor];
contactNameSubSelectionView.alpha = 0.5;
[subSelectionView addSubview:contactNameSubSelectionView];
// Contact Name Label
Contacts *contact = [self.contacts objectAtIndex:indexPath.row];
NSString *contactName = [NSString stringWithFormat:@" %@ %@ ", contact.fname, contact.lname];
UILabel *contactNameLabel = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, (int)cellSize.width, (int)cellSize.height)];
contactNameLabel.layer.cornerRadius = 4.0;
[contactNameLabel setText: contactName];
[contactNameLabel setTextColor:[UIColor blackColor]];
[contactNameLabel setFont:[UIFont boldSystemFontOfSize:[UIFont systemFontSize]]];
[contactNameSubSelectionView addSubview:(UIView *)contactNameLabel];
// Buttons
UIButton *buttonMobile = [[UIButton alloc]initWithFrame:CGRectMake(10, cellSize.height + 10, 30, 30)];
buttonMobile.layer.borderWidth = 1;
[buttonMobile setTitle:@"..." forState:UIControlStateNormal];
[buttonMobile addTarget:self action:@selector(btPressed:) forControlEvents:UIControlStateNormal];
[subSelectionView addSubview:(UIView *) buttonMobile];
[[tableView cellForRowAtIndexPath:indexPath]insertSubview:subSelectionView aboveSubview:self.view];
[self.parentViewController.view bringSubviewToFront:subSelectionView];
[tableView reloadData];
}
लेकिन काम नहीं करता है ..
नीचे दी गई छवि मेरी subSelectionView पता चलता है, बटन यह भीतर है और subSelectionView tableView के भीतर है। अब, जब मैंने उस बटन पर क्लिक किया, तो समस्या यह है कि मैं वास्तव में इसे क्लिक नहीं कर सकता। यह सीधे मेरे टेबल की उपस्थिति के साथ तालिका पर ध्यान केंद्रित करता है। कोई मेरी मदद कर सकते हैं? ....
धन्यवाद पेटी .. मैंने पहले ही इसकी समीक्षा की है और बटन सक्षम प्रॉपर्टी को हां में सेट किया है लेकिन अभी भी काम नहीं करता है .. हमम .. क्या मैं इस कोड का उपयोग कर रहा हूं: [[tableView cellForRowAtIndexPath: indexPath] insertSubview: subSelectionView उपरोक्त दृश्य: self.view ] ;? – Aldee
यदि आप सबव्यूव देख सकते हैं, तो हाँ - समस्या यह है कि यह ईवेंट प्राप्त नहीं करता है। –