2013-12-19 12 views
0

iOS 프로그래밍에서 실제로 많은 책과 문서를 읽은 후에는 어떤 저장소 유형 (취약하거나 강함)을 선택했는지, 컨트롤 끌기 "기본"보기 아래의 UI 요소에서? I 씨 제론 반 Rijn이하여 예 iOS SDK: Working with NSUserDefaults을 재현하기 위해 노력하고있어 예를 들어iOS7의 "기본"보기 아래에있는 요소에 대한 저장소 (약하거나 강함)

enter image description here

: (그리고 "주"에 의해 나는 내가의 ViewController의 view 속성에 할당 된 UIView의 의미 생각) - (Xcode 5.0.2 및 iOS7)

enter image description here

그의 코드는 약한/강한 지정자를 부족하고 여기 올바른 될 것이라고, 궁금해?

#import <UIKit/UIKit.h> 
@interface ContactViewController : UIViewController { 
    IBOutlet UIImageView *contactImageView; 
    IBOutlet UITextField *firstNameTextField; 
    IBOutlet UITextField *lastNameTextField; 
    IBOutlet UITextField *ageTextField; 
} 
- (IBAction)save:(id)sender; 
- (IBAction)chooseImage:(id)sender; 
@end 
+1

IBOutlet은 weak 뷰로 정의해야합니다. 뷰를 생성 한 뷰에 유지되므로 약합니다. ViewController는 참조를 원하고 다시 유지할 필요가 없습니다. – Tim

답변

1

해당 뷰가 이미 당신이 다시 보유 할 필요가 없습니다 (당신은 인터페이스 빌더에서 설정 한)를 생성하는 뷰에 의해 유지, 그래서 당신은 약한하지 선택해야하기 때문에 strong.

+0

고맙습니다. Xcode 5는 보조 모드에서 드래그를 제어 할 때 "강"하다고 제안합니다. –

1

이보기에서는보기에 콘센트가 필요하지 않습니다. 당신은 그것을 좋아 액세스 할 수 있습니다 : 당신의 ContactViewController 또는 같은에서

self.view 

:

ContactViewController *contact = [[ContactViewController alloc] init]; 
contact.view 

를 다른 뷰 컨트롤러에서. 그러나 콘센트에는 약점이 있습니다.