2011-12-07 10 views
5

मैं UINavigationController के साथ UITableView एप्लिकेशन बनाने के लिए xcode टेम्पलेट का उपयोग कर रहा हूं।आईओएस में UITableView के ऊपर UIView कैसे जोड़ें?

मुझे UINavigationBar और UITableView के बीच एक UIView (निश्चित स्थिति पर) जोड़ने की आवश्यकता है। उसको कैसे करे ?

धन्यवाद।

enter image description here

उत्तर

6

आप क्या कर सकते हैं यह UITableView की tableHeaderView संपत्ति सेट करके।

UITableView class reference

tableHeaderView

एक सहायक का मानना ​​है कि तालिका के ऊपर प्रदर्शित किया जाता है देता है।

@property (nonatomic, को बनाए रखने) UIView * tableHeaderView

चर्चा डिफ़ॉल्ट मान के बराबर है। तालिका शीर्षलेख दृश्य अनुभाग शीर्षलेख से अलग है।

उपलब्धता आईओएस 2.0 और बाद में उपलब्ध है।

2

UIView और UITableView UIView की subviews के रूप में और फिर अपनी ऊंचाई, चौड़ाई और एक्स, इंटरफ़ेस बिल्डर में आकार इंस्पेक्टर से y स्थिति स्थिति या उद्देश्य-सी में CGRectMake का प्रयोग करें

+0

इस विधि को मुझे डेटा स्रोत और UITableView के प्रतिनिधि को फिर से कॉन्फ़िगर करने की आवश्यकता है। पर्याप्त दोस्ताना नहीं है। – user403015

+0

मुझे लगता है कि उनका एप्लिकेशन नेविगेशन प्रकार है जिसमें क्लास को UITableViewController से विरासत में मिला है। –

+1

@ user403015 यदि आप शीर्ष पर UIView को ठीक करना चाहते हैं, तो इसे संभालने का यही एकमात्र तरीका है। – theTRON

-1

विचार आईओएस में पदानुक्रम में बनाए रखा जाता है। वे पहले नवीनतम दृश्य के साथ अनिवार्य रूप से एक सरणी के रूप में बनाए रखा जाता है। एक दृश्य के नीचे या ऊपर के ऊपर कुछ दृश्य डालने के लिए आपको बस इसे कुशल बनाना होगा।

यह सब सिद्धांत है, मैंने जो भी आप चाहते हैं वह नहीं किया है। तो मेरे खिलाफ चिल्लाओ मत;) यह एक दोस्ताना सुझाव है।

[self.view insertSubview:yourNewView belowSubview:navigationController];

+0

यह फ्रेम के साथ किसी भी तरह से संबंधित नहीं है –

1

आप UITableView प्रतिनिधि तरीकों

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section 
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section 
+0

ये प्रतिनिधि विधियां ** अनुभाग शीर्षलेख ** पर दृश्य जोड़ती हैं, तालिकादृश्य से ऊपर नहीं। – Mutix

+0

मुझे लगता है कि टेबलव्यू में केवल ** एक अनुभाग ** है –

0

चरण 1) उस दृश्य के रूप में एक शीर्ष लेख देखने के लिए, आउटलेट सेट बनाएं निम्नलिखित को लागू करने की जरूरत है।

@property (nonatomic, strong) IBOutlet UIView * viewHeader;

setp 2) viewDidLoad

पर एक पंक्ति कोड निम्नलिखित जोड़ें

[self.tableview setTableHeaderView: self.viewHeader];

हो गया !!!

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