Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> IOS

UITableViewController और UIViewController में क्या अंतर है?

<घंटा/>

UITableViewController और UIViewController iOS UIKit ढांचे के दो अलग-अलग ऑब्जेक्ट हैं। दोनों का उपयोग अलग-अलग उद्देश्यों के लिए किया जाता है।

एक UIViewController क्लास एक ViewContoller का प्रबंधन करता है जो उस व्यू कंट्रोलर के भीतर होने वाली क्रियाओं के लिए ज़िम्मेदार है। यह वर्ग व्यू कंट्रोलर पर होने वाली कार्रवाइयों से अवगत है, जैसे ViewDidLoad, ViewWillApper, ViewDidAppear, ViewWillDisapper, ViewDidDisapper।

जबकि, एक UITableViewController UITableViewDataSource, UITableViewDelegate का उपयोग करके तालिका, उसके डेटा और उसके ईवेंट के प्रबंधन के लिए ज़िम्मेदार है।

एक UITableViewController तालिका दृश्य को लागू करने के लिए UIViewController, UITableViewDataSource और UITableViewDelegate के अनुरूप है।

UIViewController को लागू करने वाले वर्ग का एक उदाहरण नीचे दिया गया है।

class ViewController : UIViewController {
   @IBOutlet weak var sampleView: UIView!
   override func viewDidLoad() {
   }
}

एक UITableViewController भी UIViewController के अनुरूप है, इसलिए यह UIViewController के तरीकों को लागू कर सकता है। UITableViewController का उपयोग ज्यादातर तब किया जाता है जब उस ViewController में टेबल व्यू के अलावा कोई अन्य सामग्री न हो।

यदि व्यू कंट्रोलर के पास टेबल व्यू के साथ अन्य सामग्री है, तो हम ज्यादातर इसे एक UIViewController के अनुरूप बनाते हैं और टेबल व्यू के प्रोटोकॉल को लागू करते हैं जो उस टेबल पर डेटा के कुछ स्रोत को असाइन करने के लिए UITableViewDataSource हैं और उस टेबल व्यू पर ईवेंट को संभालने के लिए UITableViewDelegate।

UITableViewDataSource या UITableViewDelegate को लागू करने वाले UIViewController का एक उदाहरण है

class ViewController : UIViewController, UITableViewDataSource, UITableViewDelegate {
   override func viewDidLoad() {
   }
   func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) −> Int {
      //
   }
   func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) −> UITableViewCell {
   //
   }
}

उपरोक्त के अलावा तालिका दृश्य के कुछ अन्य गुण भी हैं जिनका उल्लेख नीचे किया गया है।

  • जब तालिका दृश्य प्रदर्शित होने वाला होता है तो यह अपना डेटा पुनः लोड करता है।

  • तालिका दृश्य प्रकट होने पर डिफ़ॉल्ट रूप से इसके चयन को साफ़ कर देता है।

  • जब स्क्रीन पर टेबल व्यू दिखाई देता है, तो इसके स्क्रॉल इंडिकेटर्स फ्लैश हो जाते हैं। यह viewDidAppear() विधि के अंतर्गत किया जाता है।


  1. DirectX 11 और DirectX 12 में क्या अंतर है?

    DirectX, एपीआई या एप्लिकेशन प्रोग्रामिंग इंटरफेस का एक संग्रह है, जिसका उपयोग सॉफ्टवेयर द्वारा मल्टीमीडिया सामग्री को प्रस्तुत करने और ग्राफिकल हार्डवेयर के साथ संचार करने के लिए किया जाता है। DirectX का प्रमुख घटक API, Direct3D, सॉफ्टवेयर और ग्राफिक्स हार्डवेयर के बीच संचार को संभालता है। चूंकि सभी

  1. Android पर ग्रेविटी और लेआउट_ग्रैविटी में क्या अंतर है?

    एंड्रॉइड गुरुत्वाकर्षण और लेआउट_ग्रेविटी दोनों का समर्थन करता है। गुरुत्वाकर्षण दृश्य स्थिति को समायोजित करता है। गुरुत्वाकर्षण का उपयोग करके हम नीचे दिखाए अनुसार दृश्य का संरेखण कर सकते हैं। उपरोक्त कोड में टेक्स्टव्यू पैरेंट लेआउट के बीच में सेट होने वाला है। गुरुत्वाकर्षण के गुण केंद्र - यह

  1. Android पर onCreate () और onStart () में क्या अंतर है?

    यह उदाहरण Android में onCreate () और onStart () के बीच के अंतर को दर्शाता है। नोट - onCreate() को तब कहा जाता है जब गतिविधि पहली बार बनाई जाती है। ऑनस्टार्ट () को तब कहा जाता है जब गतिविधि उपयोगकर्ता को दिखाई देने लगती है। चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक