কম্পিউটার

UITableViewController এবং UIViewController এর মধ্যে পার্থক্য কি?


UItableViewController এবং UIViewController হল iOS UIKit ফ্রেমওয়ার্কের দুটি ভিন্ন বস্তু। উভয়ই ভিন্ন উদ্দেশ্যে ব্যবহৃত হয়।

একটি UIViewController ক্লাস একটি ViewController পরিচালনা করে যা সেই ভিউ কন্ট্রোলারের মধ্যে ঘটে যাওয়া ক্রিয়াগুলির জন্য দায়ী৷ এই শ্রেণীটি ভিউ কন্ট্রোলারে ঘটে যাওয়া ক্রিয়া সম্পর্কে সচেতন, যেমন 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-এর মধ্যে পার্থক্য কী?

  2. অ্যান্ড্রয়েডে মাধ্যাকর্ষণ এবং লেআউট_গ্রাভিটির মধ্যে পার্থক্য কী?

  3. অ্যান্ড্রয়েডে onCreate() এবং onStart() এর মধ্যে পার্থক্য কী?

  4. C# এ চূড়ান্ত করা এবং নিষ্পত্তি করার মধ্যে পার্থক্য কী?