0
자습서 스타일 UIPageViewController를 추가하기 위해 AppCoda 튜토리얼을 사용했습니다. 놀랍게도 작동합니다. 버튼 클릭으로 제거 할 수 없습니다.PageViewController를 제거하십시오.
#import "startupViewController.h"
#import "SKSlideViewController.h"
#import "APPChildViewController.h"
@interface startupViewController()
@end
@implementation startupViewController
@synthesize outletWallpaper;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
[self mymethod];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (void)mymethod {
self.pageController = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:nil];
self.pageController.dataSource = self;
[[self.pageController view] setFrame:[[self view] bounds]];
APPChildViewController *initialViewController = [self viewControllerAtIndex:0];
NSArray *viewControllers = [NSArray arrayWithObject:initialViewController];
[self.pageController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:NO completion:nil];
[self addChildViewController:self.pageController];
[[self view] addSubview:[self.pageController view]];
[self.pageController didMoveToParentViewController:self];
}
- (APPChildViewController *)viewControllerAtIndex:(NSUInteger)index {
APPChildViewController *childViewController = [[APPChildViewController alloc] initWithNibName:@"APPChildViewController" bundle:nil];
childViewController.index = index;
return childViewController;
}
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController {
NSUInteger index = [(APPChildViewController *)viewController index];
if (index == 0) {
return nil;
}
// Decrease the index by 1 to return
index--;
return [self viewControllerAtIndex:index];
}
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController {
NSUInteger index = [(APPChildViewController *)viewController index];
index++;
if (index == 3) {
return nil;
}
return [self viewControllerAtIndex:index];
}
- (NSInteger)presentationCountForPageViewController:(UIPageViewController *)pageViewController {
// The number of items reflected in the page indicator.
return 3;
}
- (NSInteger)presentationIndexForPageViewController:(UIPageViewController *)pageViewController {
// The selected item reflected in the page indicator.
return 0;
}
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
NSLog(@"Switching View Controllers...");
SKSlideViewController *slideController=(SKSlideViewController *)[segue destinationViewController];
[slideController setStoryBoardIDForMainController:@"MainVC" leftController:@"LeftVC" rightController:@"RightVC"];
[slideController reloadControllers];
}
@end
이 코드는 거기에서, 나는 전체를 제거해야 다른 파일에 저를 보냅니다
여기 내 PageViewController입니다.
, 아무것도 작동하지 않습니다. 하지만 self.view.alpha를 0으로 설정하려고 시도했는데 (작동하는 것처럼 보이는 새로운 .m 파일에서), (버튼 등 ..) 어떤 것도 사용할 수 없다. – iOSDec
보기의 모든보기를 반복하고, superview, childview를 찾고, 먼저 pageController를 찾으십시오. - (IBAction를) CLOSEALL : – Retterdesdialogs
난 그냥 UIPageController.m에이 코드를 추가하려고했습니다 (ID) 보낸 사람을 { UIStoryboard * SB = [UIStoryboard storyboardWithName : "메인"번들 @ : 무기 호] UIViewController * vc = [sb instantiateViewControllerWithIdentifier : @ "MainVC"]; vc.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; [self presentViewController : vc animated : 예 완료 : NULL]; }는 는 이제 메시지 : <: 0x8d37a40 SAMainViewController>에 시도가 제시은 뷰 윈도우 계층 아니다!? –
iOSDec