आपको नियमित UITableViewController
(इसलिए आपको सभी स्थिर सेल व्यवहार) और फिर तालिका दृश्य के सबव्यूव के रूप में आपका दृश्य मिलता है, लेकिन प्रबंधित किया जाता है कि यह हमेशा स्क्रीन के निचले भाग में चिपक जाता है। ऐप्पल ने इसे डब्ल्यूडब्ल्यूडीसी के रूप में प्रदर्शित किया। यहाँ मैं क्या करना है (मेरे उदाहरण में, मैं एक UIDatePicker
कि मैं हमेशा तल पर लंगर डाले चाहते हैं):
viewDidLoad
में, आपके विचार बना सकते हैं और तालिका देखने के एक subview के रूप में जोड़ें। इसे तालिका दृश्य के नीचे रखें।
[self.tableView addSubview:self.datePicker];
[self updateDatePickerBounds];
लागू scrollViewDidScroll
ताकि आप तालिका दृश्य स्क्रॉल स्क्रीन कभी समय की तह तक आपके विचार के लिए मजबूर कर सकते हैं:
- (void) scrollViewDidScroll:(UIScrollView *)scrollView
{
// Keep the date picker floating above the table view, anchored to the bottom of the view
[self updateDatePickerBounds];
}
और फिर एक समारोह के सही ढंग से आपके विचार की स्थिति है कि लागू:
- (void) updateDatePickerBounds
{
// Keep the date picker floating above the table view, anchored at the bottom
CGRect tableBounds = self.tableView.bounds;
CGRect pickerFrame = self.datePicker.frame;
pickerFrame = CGRectMake(tableBounds.origin.x,
tableBounds.origin.y + CGRectGetHeight(tableBounds) - CGRectGetHeight(pickerFrame),
tableBounds.size.width,
pickerFrame.size.height);
self.datePicker.frame = pickerFrame;
}
अंत में, यदि आप नहीं चाहते हैं कि आपकी तालिका दृश्य आपके नीचे के दृश्य में जा रहा है, तो बस तालिका दृश्य के contentInset
को एच से मिलान करने के लिए सेट करें आपके आठ दृश्य।
मैं viewWillAppear
से updateDatePickerBounds
विधि भी कॉल करता हूं। मैं भूल गया कि मुझे ऐसा क्यों करना पड़ा।
स्रोत
2012-09-04 21:54:46
पाद लेख केवल तब दिखाई देता है जब आप तालिका के नीचे होते हैं, सही? मुझे इस दृश्य को हर समय दिखने की ज़रूरत है। – lnafziger
महान समाधान! आप टेबल व्यू सेक्शन के पहले या उसके बाद एक सामान्य UIView जोड़ सकते हैं जो मूल रूप से इसे दूसरे तरीके से एकीकृत करने के समान होता है और यह वास्तव में काम करता है। –