के बिना स्विफ्ट में कस्टम टेबल व्यू सेल, मैं आईओएस विकास और स्विफ्ट भाषा सीखने के लिए नया हूं, और स्टोरीबोर्ड/इंटरफेस बिल्डर के उपयोग के बिना कस्टम UITableViewCell
बनाने का तरीका जानने का प्रयास कर रहा हूं। मैं स्विफ्ट कोड में सबकुछ पूरा करने में सक्षम होना चाहता हूं। अब तक, मैं केवल उन लोगों को ढूंढने में सक्षम हूं जो इंटरफ़ेस बिल्डर का उपयोग करते हैं।स्टोरीबोर्ड
मैं ऐसा करने में सक्षम होने के लिए क्या चाहते हैं एक फिर से प्रयोग करने योग्य सेल है कि किसी भी तालिका दृश्य में instantiated जा सकती है, पैदा करते हैं। जो मैं समझता हूं उससे मुझे उप-विचारों के साथ एक कस्टम सेल बनाने में सक्षम होना चाहिए, जो डेटा तालिका के आने वाले डेटा द्वारा सेट किया जा सकता है। सही?
अभी मेरे पास एक एम्बेडेड, उप-वर्गीकृत UITableViewController
के साथ UINavigationController
है। कुछ अन्य ट्यूटोरियल्स के बाद मैंने यह भी सीखा है कि स्ट्रक्चर कैसे बनाएं और टेबल व्यू सेल के लिए टेस्ट डेटा तैयार करें। लेकिन यह लगभग है जहां तक मैं प्राप्त करने में सक्षम हूं।
// My Table View Controller
class InventoryListViewController: MainTableViewController {
let viewTitle = "Inventory"
var inventoryItems = [InventoryItem]()
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.title = viewTitle.uppercaseString
self.inventoryItems = [
InventoryItem(name: "White Bread", expiry: "2014-09-12"),
InventoryItem(name: "Mushrooms", expiry: "2014-09-15"),
InventoryItem(name: "Watermelon", expiry: nil),
InventoryItem(name: "Leftover Thai", expiry: "2014-09-15"),
InventoryItem(name: "Cheddar Cheese", expiry: "2014-09-12"),
InventoryItem(name: "Chicken Breasts", expiry: "2014-09-10"),
InventoryItem(name: "Paprika", expiry: nil),
InventoryItem(name: "Sour Cream", expiry: nil)
]
// Right now this will fail without tableView:cellForRowAtIndexPath
self.tableView.reloadData()
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return self.inventoryItems.count
}
}
// Sub-classed UITableViewController
class MainTableViewController: UITableViewController {
override func viewDidLoad() {
super.viewDidLoad()
self.tableView.separatorColor = UIColor.clearColor()
self.tableView.contentInset = UIEdgeInsetsZero
}
}
// Data struct for cells
struct InventoryItem {
let name: String
let expiry: String?
}
मैं स्विफ्ट को समझने के अभी भी बहुत नया है और वह शायद कारण है कि मैं इस विषय के लिए बहुत ज्यादा संसाधनों नहीं मिल सकता है, तो मैं मदद करने के लिए बहुत सराहना हो सकता है अगर किसी को भी किसी भी संकेत दिए गए है!
हम्म के साथ उपयोग कर सकते हैं। यह बहुत ही आशाजनक प्रतीत होता है, हालांकि जब मैं इसे आज़माता हूं, तो 'MainTableViewController' के साथ 'self.configureCell'' में त्रुटियां 'कॉन्फ़िगरेशनसेल' नामक सदस्य नहीं होती हैं। मैं यहाँ क्या गलत करूँगा? –
मैं सिर्फ 'जोड़ लिया है confgureCell' शो कस्टम करने के लिए code.You इसे हटा सकते हैं और it.You की कोई आवश्यकता नहीं अपने खुद के कोड जो कुछ भी आप label.I की स्थापना की तरह क्या करना चाहते हैं लिख सकते हैं वहाँ संपादन कर रहा हूँ मेरी कोड सेट करना चाहते लेबल 'cell.textLabel? .text = @ "आपका लेबल टेक्स्ट" ' – codester
ओह, मैं देखता हूं। धन्यवाद! ऐसा लगता है कि काम करता है! हालांकि, अगर आपको आगे की व्याख्या करने में कोई फर्क नहीं पड़ता है - मैं कस्टम सेल _within_ 'सेल' कक्षा में एक नया दृश्य (लेबल की तरह) कैसे जोड़ूं? मैंने [यह] (http://tny.cz/b83cf1bf) करने की कोशिश की लेकिन यह काम नहीं किया! –