আপনি কীভাবে কাস্টম ইনিশিয়ালাইজার যুক্ত করবেন UIViewController
সুইফটে সাবক্লাসে ?
আমি এর একটি উপ শ্রেণি তৈরি করেছি UIViewController
যা দেখতে কিছুটা এমন দেখাচ্ছে:
class MyViewController : UIViewController
{
init(leftVC:UIViewController, rightVC:UIViewController, gap:Int)
{
self.leftVC = leftVC;
self.rightVC = rightVC;
self.gap = gap;
super.init();
setupScrollView();
setupViewControllers();
}
}
আমি এটি চালানোর সময় আমি মারাত্মক ত্রুটি পাই:
মারাত্মক ত্রুটি: 'মাই অ্যাপ.মাইভিউকন্ট্রোলার' ক্লাসের জন্য অবিহিত আরম্ভকারী 'আরআইবি (নিবনেম: বান্ডেল :)' ব্যবহার করুন
আমি কোথাও পড়েছি যে একটি কাস্টম ইনিশিয়ালাইজার যুক্ত করার সময় একজনকেও ওভাররাইড করতে হয় init(coder aDecoder:NSCoder)
তাই আসুন সেটিকে ওভাররাইড করে init
দেখুন কী ঘটেছিল:
override init(coder aDecoder: NSCoder)
{
super.init(coder: aDecoder);
}
আমি যদি এটি যুক্ত করি তবে এক্সকোড অভিযোগ করে self.leftVC is not initialized at super.init call
। সুতরাং আমি অনুমান করি যে সমাধানও হতে পারে না। সুতরাং আমি অবাক হই যে আমি কীভাবে ViewController
সুইফটের একটি সাবক্লাসে কাস্টম ইনিশিয়ালাইজারগুলি যুক্ত করতে পারি (যেহেতু অবজেক্টিভ-সিতে এটি কোনও সমস্যা বলে মনে হচ্ছে না)?
MyViewController
?