मैंने एक UITableView को एक कस्टम UIView क्लास के लिए एक सबव्यूव के रूप में जोड़ा जो मैं काम कर रहा हूं। हालांकि मैंने देखा कि जब भी मैं टेबल को स्क्रॉल करता हूं तो यह मेरे वर्ग लेआउटसब्यूव्यूज़ को कॉल करता है। मुझे यकीन है कि यह यूआईएसक्रोलव्यू है कि तालिका विरासत में है जो वास्तव में ऐसा कर रही है लेकिन यह जानना चाहती थी कि क्या इस कार्यक्षमता को अक्षम करने का कोई तरीका है और यदि ऐसा क्यों नहीं हो रहा है? मुझे समझ में नहीं आता है कि जब आप स्क्रॉलव्यू स्क्रॉल करते हैं तो इसे इसके सबव्यूज़ लेआउट के लिए अपने पर्यवेक्षक की आवश्यकता होती है।UIScrollview कॉलिंग पर्यवेक्षण लेआउट स्क्रॉल करते समय सबव्यूव्यूज़?
कोड:
@implementation CustomView
- (id)initWithFrame:(CGRect)frame {
if ((self = [super initWithFrame:frame])) {
self.clipsToBounds = YES;
UITableView *tableView = [[UITableView alloc] initWithFrame:CGRectMake(0.0, 15.0, 436.0, 132.0) style:UITableViewStylePlain];
tableView.dataSource = self;
tableView.delegate = self;
tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
tableView.backgroundColor = [UIColor clearColor];
tableView.showsVerticalScrollIndicator = NO;
tableView.contentInset = UIEdgeInsetsMake(kRowHeight, 0.0, kRowHeight, 0.0);
tableView.tag = componentIndex;
[self addSubview:tableView];
[tableView release];
}
return self;
}
- (void)layoutSubviews {
// This is called everytime I scroll the tableview
}
@end
लेकिन मुझे बताओ क्यों आप ऐसा क्या किया तुम क्यों जोड़ रहे हैं कस्टम दृश्य के लिए टेबल दृश्य? – Manjunath
लंबी कहानी, मैं एक कस्टम पिकर व्यू बना रहा हूं जो एकाधिक चयन की अनुमति देता है और मानक एक से अलग आकार का होता है। यह मूल रूप से शीर्ष – marchinram
पर एक स्पष्ट तालिका के साथ परिवर्तित एक पिकरव्यू पृष्ठभूमि प्रदर्शित करता है क्या आपने इसे देखा है? उस लेआउट में लड़के को विपरीत समस्या दिखाई देती है, दृश्यवृत्त नहीं कहा जाता है। उन्होंने एक फिक्स का भी उल्लेख किया, जो कि यदि आप इसे उलटा करते हैं, तो आपके लिए काम कर सकता है। :) http://stackoverflow.com/questions/728372/when-is-layoutsubviews-called – Kalle