2013-05-11 34 views
0

任何人都可以在這裏請告訴我,下面是從基類繼承類的正確方法。如何在Objective-C中正確訪問基類屬性?

謝謝。

// BaseController.h 
@interface BaseController: UIViewController 
{ 
    IBOutlet UITextField* m_pNameTxtFld; 
} 
@property (nonatomic, retain) IBOutlet UITextField* m_pNameTxtFld; 

// BaseController.m

-(void) viewDidDisappear:(BOOL)animated 
{ 
    [super viewDidDisappear:animated]; 
    if (self.m_pNameTxtFld) 
    { 
    self.m_pNameTxtFld = nil; 
    } 
} 

// NewContorller.h

@interface NewContorller: BaseController 
{ 
} 

// NewContorller.m

@implementation NewContorller 

- (無效)viewDidLoad中

{ 
    self.m_pNameTxtFld.text = @"Test"; 
} 
+0

我們在這裏聽到了C++口音的痕跡嗎? :-)你的「基類」也被稱爲「超類」,而實例變量不是「成員」,所以你不會看到「m_」命名約定。就像單挑一樣。 – Monolo 2013-05-11 10:08:11

+0

謝謝Monolo ...會對它進行檢查... :-) – newdev1 2013-05-11 23:53:26

回答

1

是的,這是正確的方法。請記住,您應該在子類中的viewDidLoad實現的起始處調用[super viewDidLoad]。

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    self.m_pNameTxtFld.text = @"Test"; 
}