2015-09-30 9 views
10

का उपयोग करते समय UITableView नहीं मिला, मैं इस tutorial, "विकल्प 2: प्रोटोटाइप सेल" से गुज़र रहा हूं, मैंने सभी चरणों को लागू किया है, लेकिन, निम्न कोड मुझे एक त्रुटि देता है:स्टोरीबोर्ड "मुख्य", लेकिन UITableViewController

@interface MTViewController : UITableViewController 

@end 

त्रुटि संदेश है:

instantiated view controller with identifier "UIViewController-BYZ-38-t0r" from storyboard "Main", but didn't get a UITableView.'

यहाँ मैं क्या करने की कोशिश की है - मैं UIViewController करने के लिए UITableViewController बदल गया है और त्रुटि दूर चला गया। लेकिन, टेबलव्यू खाली रहता है। क्या आप मुझे बता सकते हैं कि यह क्यों है?

+0

आपका खाली मतलब क्या है? जब आप अपने स्टोरीबोर्ड पर व्यू कंट्रोलर जोड़ते हैं तो यह वेनिला है। आपको इसमें तत्व जोड़ना होगा। – Bob

उत्तर

14

UIViewController के लिए अपने सुपर वर्ग बदलने का प्रयास करें या नियंत्रक अपने स्टोरीबोर्ड में tableview नियंत्रक को

@interface MTViewController : UIViewController, UITableViewDataSource, UITableViewDelegate 

@end 
3

खींचें अपने स्टोरीबोर्ड में तालिका दृश्य नियंत्रक का एक नया उदाहरण बदलने के लिए, कोशिकाओं आप में अपने पिछले नियंत्रक में बनाया कॉपी नए वाला।

यह त्रुटि शायद इसलिए हुई क्योंकि आपने XCode द्वारा बनाए गए डिफ़ॉल्ट UIViewController का उपयोग किया जो UITableViewController नहीं है।

+0

बहुत सूक्ष्म समस्या और स्पष्ट समाधान (मानते हुए कि आप समस्या की सराहना करते हैं)। अब, मेरे सेल गुण एनआईएल वापस क्यों आ रहे हैं? – mobibob

+0

यह विचित्र है लेकिन यह सच है। वही समस्या थी, जैसा आपने वर्णन किया था हल किया गया था – pulp

27

अपनी स्टोरीबोर्ड में, आपको अपने UITableViewControllerUITableView का मूल दृश्य बनाने की आवश्यकता है।

Interface Builder Table View Controller

Interface Builder Custom Class

0

आप उपवर्ग अवश्य UIViewController बजाय

की UITableViewController // इस तरह आप के बारे में यह

@interface MTViewController : UIViewController 


@end 
2

मैं मिला है जाना चाहिए यह जांच लेम भी मैंने मूल रूप से सादा UIViewController बनाया, फिर मैंने UITableViewController का उपयोग करने का निर्णय लिया। समस्या यह है कि मैं नए नियंत्रक पर स्टोरीबोर्ड आईडी सेट करना भूल गया, और इसे पुराने नियंत्रक पर किसी और चीज़ में बदलना भूल गया, अन्यथा आप पुराने नियंत्रक को स्टोरीबोर्ड से तुरंत चालू कर देंगे और यह समस्या होगी।

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