2011-03-10 13 views
9

पर मैं एक UITableViewCell के सहायक दृश्य बदलने के लिए जब इसकी पंक्तियां चुनी जाती हैं कोशिश कर रहा हूँ, मैं निम्नलिखित कोड है:बदलें UITableView accessoryView पंक्ति का चयन

- (void)tableView:(UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ 
    UITableViewCell* cell = [self tableView:aTableView cellForRowAtIndexPath:indexPath]; 
    UIActivityIndicatorView *activityView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite]; 
    [activityView startAnimating]; 
    cell.accessoryView = activityView; 
    [activityView release]; 
} 

लेकिन यह काम नहीं कर रहा। कोई विचार?

+0

और btw आप भूल जाते हैं न नहीं बताते हैं कि कारण है कि मैं यह आंकड़ा करने की कोशिश की है, तो आप पृष्ठभूमि भी^सफेद है सफेद गतिविधि सूचक देख सकते हैं) – Sergnsk

+0

एक और सेल चुनने के बाद गतिविधि संकेतक क्यों हटा दिया गया। –

उत्तर

8

आपको सेल के लिए टेबलव्यू डेटासॉर (स्वयं स्वयं) नहीं पूछना चाहिए। क्योंकि यह एक नया सेल तैयार करेगा जो अभी प्रदर्शित नहीं हुआ है।

की जगह

UITableViewCell* cell = [self tableView:aTableView cellForRowAtIndexPath:indexPath]; 

साथ

UITableViewCell *cell = [aTableView cellForRowAtIndexPath:indexPath]; 
+0

आह सही। धन्यवाद! बेवकूफ सवाल के लिए खेद है। – Paludis

+4

@Paludis कोई गूंगा सवाल नहीं हैं :-) विशेष रूप से यह नहीं। मुझे लगता है कि दोनों तरीकों के बीच अंतर इतना स्पष्ट नहीं है। वे 70% नाम साझा करते हैं लेकिन कुछ पूरी तरह से अलग करते हैं। –

5
UIImage *normalImage = [UIImage imageNamed:@"cell-accessory.png"]; 
    UIImage *selectedImage = [UIImage imageNamed:@"cell-accessory-selected.png"]; 

    UIButton *accessoryView = [UIButton buttonWithType:UIButtonTypeCustom]; 
    accessoryView.frame = CGRectMake(0.0f, 0.0f, normalImage.size.width, normalImage.size.height); 
    accessoryView.userInteractionEnabled = NO; 
    [accessoryView setImage:normalImage forState:UIControlStateNormal]; 
    [accessoryView setImage:selectedImage forState:UIControlStateHighlighted]; 
    cell.accessoryView = accessoryView; 
+0

यह एक बहुत अच्छा विचार नहीं है, बटन को छूने वाले सेल का चयन करने से कुछ भी नहीं बदलेगा – Daniel

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