2012-02-25 2 views
2

iPhone의 뮤직 앱의 동작을 복제하고 싶습니다. 해당 앱에서 앨범을 재생할 때 오른쪽 상단의 버튼을 탭하면 앨범 표지가 뒤집혀 UITableView 개의 트랙이 표시됩니다.iOS 5 뮤직 앱의 앨범 트랙을 복제하는 스토리 보드보기

고객 맞춤 UIStoryboardSegue으로 이것을 수행 할 수 있습니까?

또는 동일한 컨트롤러를 사용하는 두보기 사이를 전환하는 가장 좋은 방법은 무엇입니까?

답변

2

같은보기 컨트롤러의 두보기를 서로 전환하는 것이 더 쉽습니다 (예 :

- (IBAction)showTracksView 
{ 
    [UIView transitionWithView:self.view 
        duration:1.0 
        options:UIViewAnimationOptionTransitionFlipFromLeft 
       animations:^{ tracksView.hidden = NO; } 
       completion:^(BOOL finished){ self.navigationItem.title = @"Tracks"; }]; 
} 

- (IBAction)hideTracksView 
{ 
    [UIView transitionWithView:self.view 
        duration:1.0 
        options:UIViewAnimationOptionTransitionFlipFromLeft 
       animations:^{ tracksView.hidden = YES; } 
       completion:^(BOOL finished){ self.navigationItem.title = @"Album cover"; }]; 
} 

여기서 tracksView는 트랙의 UITableView입니다.

+1

오른쪽, 즉 내가하고 결국거야. 두 개의 서로 다른 뷰 컨트롤러를 사용하고 두 뷰 컨트롤러 사이의 로직을 분리하기를 바랬습니다. 문제가있어서 플레이어 뷰와 UITableView에 동일한 컨트롤러를 사용하게되었습니다. 이는 이제 동일한 장면에서 여러 레이어로 작업해야하므로 스토리 보드 작업을 더 어렵게 만듭니다. –

0

나는이 과제를 가지고 있으며 뷰 컨트롤러를 표현하기 위해 맞춤 segue를 사용하여이를 해결했다. UIStoryboardSegue를 기반으로 새로운 클래스를 만드십시오. 여기

내 사용자 정의 SEGUE입니다

.H 파일 : 인터페이스 빌더에서

#import <UIKit/UIKit.h> 

@interface BRTrackNotesSegue : UIStoryboardSegue 

@end 

하는 .m 파일

@implementation BRTrackNotesSegue 

- (void) perform { 
    UIViewController *src = (UIViewController *) self.sourceViewController; 
    UIViewController *dst = (UIViewController *) self.destinationViewController; 
    [UIView transitionWithView:src.navigationController.view duration:0.50 
         options:UIViewAnimationOptionTransitionFlipFromLeft 
        animations:^{ 
         [src.navigationController pushViewController:dst animated:NO]; 
        } 
        completion:NULL]; 
} 

@end 

가 SEGUE를 선택하고의 남에 SEGUE 클래스를 설정 너의 주문 segue.

두 번째 뷰 컨트롤러는 같은 애니메이션을 닫으려면 다음이 포함

- (IBAction)done:(id)sender { 


    [UIView transitionWithView:self.navigationController.view 
         duration:0.50 
         options:UIViewAnimationOptionTransitionFlipFromLeft 
        animations:nil 
        completion:nil]; 
    [self.navigationController popViewControllerAnimated:NO]; 

} 
관련 문제