나는 분명히 여기있는 바보 같은 짓을하고있다. 요약하면 단추 (세그먼트 단추 사용)를 클릭하면 하위 뷰를 프로그래밍 방식으로 토글하고 싶습니다. 그것은 움직일 필요가 없습니다. 이상 적으로는 펜촉에서 이러한 뷰의 내용을로드합니다.동적으로 UIView의 하위보기를 설정하는 방법 (iPhone)?
Nib에서 초기화 된 UIViewController 하위 클래스를 navigationController로 푸시합니다. 이보기 컨트롤러 & "기본"보기가 표시됩니다. 이 펜촉에는 다음이 포함되어 있습니다.
File's Owner [Class=my view controller subclass]
First Responder
View
--Bar Segmented Control
--View //this is the 'subview' whose content I want to toggle
아마도 내 IB 매장과 실수를 했나요?
switchableView <--> View
view <--> View
을 어디 switchableView
선언 :
IBOutlet UIView *switchableView;
...
@property (nonatomic, retain) UIView *switchableView;
이 나는이있는 UIView의 내용을 대체에 붙어 다음과 같이 그들은 매여있다. 우선,보기가 처음 생기면 기본값으로 설정하려고합니다. 이미 세그먼트 화 된 버튼에 의해 생성 된 이벤트를 캡처 할 수 있으므로 다른 것으로 교체하는 것이 쉬워야합니다. 누군가 내가 잘못하고있는 것을 말해 줄 수 있습니까?
- (void)loadView {
NSLog(@"loadView invoked");
[super loadView];
UIView *view = [[UIView alloc] init];
UILabel *label = [[UILabel alloc] init];
label.text = @"Segment1";
[view addSubview:label];
[switchableView addSubview:view]; //this is what I can't work out
[view release];
[label release];
}
(viewDidLoad
처럼)하지만, 둘 다 도움이 방법 호출된다. 나는 [switchableView addSubview:view]
을 잘못하고있는 것 같아요. 나는 또한 switchableView = view
을 시도했지만, Java와 Perl의 안전성에있어 오랜 시간이 걸리더라도 시도 할 권리가 있는지 없는지 100 % 확신 할 수 없습니다!
누군가 나를 똑바로 세울 수 있기를 바랍니다. 미리 감사드립니다.
폴
그냥 FYI : "이 메서드를 사용자 지정 구현하면 super를 호출해서는 안됩니다." http://developer.apple.com/library/ios/documentation/uikit/reference/UIViewController_Class/Reference/Reference.html#//apple_ref/occ/instm/UIViewController/loadView –