كيفية تهيئة NSObject فرعية على اي فون ؟
-
03-07-2019 - |
سؤال
أريد أن أكتب بعض الأساليب في فئة بحيث فئات أخرى يمكن استدعاء هذه الطرق باستخدام [instance methodName:Parameter]
.
إذا كانت فئة هي فئة فرعية من UIViewController
, يمكنني استخدام initWithNibName
إلى تهيئة ذلك.ولكن أريد أن أكتب الطرق في NSObject هو فرعية, كيف يمكن تهيئة ذلك ؟
المحلول 2
أجد أن هذا قد عمل:
TheClass *newObject = [[TheClass alloc] init];
//do something here
[newObject release];
نصائح أخرى
iphony هو الصحيح, ولكنه لا يقول أن تحتاج إلى كتابة الحرف الأول طريقة نفسك.الخاص بك طريقة الحرف الأول وعموما ينبغي أن ننظر بشيء من هذا القبيل:
- (id) init
{
if (self = [super init])
{
myMember1 = 0; // do your own initialisation here
myMember2 = 0;
}
return self;
}
على الرغم من أن أبل الوثائق يقول
التهيئة طريقة تعريف في فئة NSObject لا التهيئة;فإنه ببساطة يعود النفس.
واحد فقط يمكن أن يكون إغراء الكتابة
- (id) init
{
myMember1 = 0; // do your own initialisation here
myMember2 = 0;
return self;
}
هذا هو الخطأ و لا تتبع ما هو صراحة في الوثائق:
في العرف تنفيذ هذا (الحرف الأول) الطريقة, يجب استدعاء سوبر ل المعين مهيئ ثم تهيئة والعودة الكائن الجديد.
يجب أن.لا ينبغي أن يجب ، وما إلى ذلك.
يجب أن لا نفترض NSObject هو الحرف الأول لا يتغير في المستقبل ؛ ولا الفائقة التي عهدك فئة مشتقة.