일반보기 내에서 하위보기를 만들려고합니다. 이 하위보기에 포함 된 단추를 클릭하면 뒤집어 새로운 하위보기가 표시됩니다. 이것은 테이블 위에 뒤집힌 카드를 시뮬레이트하기위한 것입니다. 내가 DetailViewController는 빈 xib이지만,로드되었을 때 실제로 xib에 포함 된 모든 하위 뷰 (카드의 앞부분)를 포함하는 CardFrontViewController라는 다른 컨트롤러를로드합니다. 하위보기 내부의 버튼을 누르면 CardBackViewController xib에 포함 된 하위보기가로드됩니다.UIView transitionWith 여러 xib 파일이있는 하위 뷰보기
내부 DetailViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
if (!self.cardFrontViewController)
{
self.cardFrontViewController = [[CardFrontViewController alloc] initWithNibName: @"CardFrontViewController" bundle: nil];
[self.view addSubview: self.cardFrontViewController.view];
}
[self configureView];
}
내부 CardFrontViewController
- (IBAction)flipToAnswerCard:(id)sender
{
if (!self.cardBackViewController)
{
self.cardBackViewController = [[CardBackViewController alloc] initWithNibName: @"CardBackViewController" bundle: nil];
}
[UIView transitionWithView: self.cardFrontContainerView
duration: 1.0
options: UIViewAnimationOptionTransitionFlipFromTop
animations: ^{ [self.cardFrontSubView removeFromSuperview];
[self.cardFrontContainerView addSubview: self.cardBackViewController.cardBackSubView]; }
completion: nil];
}
내가 카드, 카드 플립 뒤집어 버튼을 클릭 만 표시되는 뷰가 자기 것을 의미 비어 .cardBackViewController.cardBackSubView가로드되지 않았습니다. 플립 카드 방법 안에 [self.cardFrontContainerView addSubview: self.cardBackViewController.view]
을 넣으면 내부에 전체 xib가로드되지만 실제로는 내부의보기가 필요합니다. 나는 여기서 무엇을해야할지 모르겠다.
두 개의 xib를 사용하여보기 안의 다른보기로 넘어가십시오. 왜 그렇게 복잡하며 온라인으로 자료를 찾는 것이 왜 어려운가요? 당신의 답을 바탕으로, 나는 그것을하려는 길인 것처럼 보이지 않습니다. – 5StringRyan
그럼 UIView 만 사용하십시오! 위의 메소드 ('loadNibNamed :')를 호출하여 특정 뷰 클래스를로드 할 수있다. – Vinzzz