निम्नलिखित सरल दृश्य नियंत्रक पर विचार करें:
वर्ग देखें नियंत्रक: UIViewController, UITableViewDataSource {@IBOutlet कमजोर var तालिकादृश्य: UITableView! Var आइटम = ["वन", "दो", "तीन"] ओवरक्राइड फंक दृश्यडिडलोड () {super.viewDidLoad () self.tableView.registerClass (CustomTableViewCell.self, forCellReuseIdentifier: "customCell") self.tableView.dataSource = self } फ़ंक्शन तालिकादृश्य (तालिका दृश्य: UITableView, numberOfRowsInSection अनुभाग: Int) - & gt; इंट {रिटर्न स्व। आईटम्स। कोट; } फ़ैन्क टेबलव्यू (टेबलव्यू: यूआईटीबल्यूव्यू, सेलफोररूऐटएक्सएपैथ इंडेक्सपाथ: एनएसआईंडएक्सपाथ) - & gt; UITableViewCell {सेल = self.tableView.dequeueReusableCellWithIdentifier ("कस्टमसेल") के रूप में CustomTableViewCell cell.titleLabel! .text = self.items [indexPath.row] वापसी सेल}}
और कस्टम सेल देखें:
<प्री> वर्ग कस्टमटेबल दृश्यकेल: UITableViewCell {@IBOutlet कमज़ोर var शीर्षकलेबेल: यूआईएलबल! > titleLabel
शून्य है - यह स्पष्ट नहीं है कि क्यों UITableViewCell
(जैसे textLabel
) के डिफ़ॉल्ट गुणों की सेटिंग ठीक है। मैं कस्टम कक्ष के लिए एक निब का उपयोग कर रहा हूं।
< P> दोनों लेबल और तालिका दृश्य उनके IBOutlet
से जुड़ा हैं।
दोनों प्रोटोटाइप सेल और कस्टम निब IOS विकास के लिए नया हूँ, क्या मैं कुछ स्पष्ट कर रहा हूं?
।
/ Div>
सबसे पहले, आप अपने कस्टम कक्ष को तालिका में लोड करने के लिए एक निब फाइल का उपयोग कर रहे हैं। शायद यह सिरदर्द की तुलना में अधिक होने वाला है, यदि आप स्विफ्ट / कोको में नए हैं मैं समय के लिए स्टोरीबोर्ड पर सब कुछ ऊपर ले जाएगा निब फाइल क्लिक करने के बजाय, स्टोरीबोर्ड पर जाएं, अपने UITableView
पर क्लिक करें और सुनिश्चित करें कि टेबलव्यू की सामग्री सेटिंग Dyanamic प्रोटोटाइप
है:
अगला, प्रोटोटाइप सेल पर क्लिक करें (तालिका दृश्य में केवल एक ) और CustomTableViewCell
को क्लास सेट करें और इसके पुनः उपयोग पहचानकर्ता को customcell
में सेट करें:
आगे, अपने प्रोटोटाइप सेल पर एक लेबल जोड़ें और अपने CustomTableViewCell
वर्ग में इसे IBOutlet में लिंक करें। आपको अपने customcell
को पंजीकृत करने की आवश्यकता नहीं है, जब तक कि आपने स्टोरीबोर्ड में पुन: उपयोगकर्ता पहचानकर्ता सेट कर दिया हो। इस पंक्ति को हटाएं:
self.tableView.registerClass (CustomTableViewCell.self, forCellReuseIdentifier: "customCell")
और इसे चलाना चाहिए।
No comments:
Post a Comment