안녕하세요, 입니다.입니다.이 질문에 대한 도움을 받으십시오.ScrollView 페이지 표시가 나타나지 않음
나는 세 개의 서로 다른 이미지를 열어 scroll view
과 pagination
으로 연결된보기를 만들고 있습니다. XIB을 사용하여 페이지 매김 논리 및 스크롤보기를 가져옵니다. 내가 어려운 다음보기로 이동합니다 발견하고
다른 플레이 화면에 나타나는 페이지 표시를 얻을 수 아니다
:
나는 두 가지 문제에 직면하고있다 일단 세 번째보기에 도달하면 컨트롤러.
다음은 레이 완더 리치의 tutorial입니다. 한 번 사용자가 마지막 페이지에 도달 할 때 다음 페이지로 스 와이프하려고하면 다음보기 컨트롤러로 이동하는 코드를 추가 할 위치에 맞습니다.
내 코드는 다음과 같다 :
- (void)viewDidLoad {
[super viewDidLoad];
self.navigationController.navigationBarHidden =YES;
// Set up the image we want to scroll & zoom and add it to the scroll view
self.pageImages = [NSArray arrayWithObjects:
[UIImage imageNamed:@"IMAGE1.png"],
[UIImage imageNamed:@"IMAGE2.png"],
[UIImage imageNamed:@"IMAGE3.png"],
// [UIImage imageNamed:@"photo4.png"],
// [UIImage imageNamed:@"photo5.png"],
nil];
NSInteger pageCount = self.pageImages.count;
// Set up the page control
self.pageControl.currentPage = 0;
self.pageControl.numberOfPages = pageCount;
// Set up the array to hold the views for each page
self.pageViews = [[NSMutableArray alloc] init];
for (NSInteger i = 0; i < pageCount; ++i) {
[self.pageViews addObject:[NSNull null]];
}
}
- (void)loadVisiblePages {
// First, determine which page is currently visible
CGFloat pageWidth = self.scrollView.frame.size.width;
NSInteger page = (NSInteger)floor((self.scrollView.contentOffset.x * 2.0f + pageWidth)/(pageWidth * 2.0f));
// Update the page control
self.pageControl.currentPage = page;
NSLog(@"One %d",page);
if (page == 2) {
page = 3;
if(page == 3){
NSLog(@"Working");
SignInViewController *view = [[SignInViewController alloc]initWithNibName:@"SignInViewController" bundle:nil];
[self.navigationController pushViewController:view animated:NO];
[view release];
view=nil;
}
}
// Work out which pages we want to load
NSInteger firstPage = page - 1;
NSInteger lastPage = page + 1;
// Purge anything before the first page
for (NSInteger i=0; i<firstPage; i++) {
[self purgePage:i];
}
// Load pages in our range
for (NSInteger i=firstPage; i<=lastPage; i++) {
[self loadPage:i];
}
// Purge anything after the last page
for (NSInteger i=lastPage+1; i<self.pageImages.count; i++) {
[self purgePage:i];
}
가}
내가 나의 뷰 컨트롤러의 줄을 추가하려고 :
SignInViewController *view = [[SignInViewController alloc]initWithNibName:@"SignInViewController" bundle:nil];
[self.navigationController pushViewController:view animated:NO];
[view release];
view=nil;
그러나 이렇게하면 세 번째 이미지가 사라집니다. 사용자가 두 번째 이미지에서 세 번째 이미지로 스 와이프하려고하면 내 SignInView
컨트롤러 페이지로 직접 이동합니다.
사용자가 세 번째 이미지를보고 나서 스 와이프를 감지하고 애니메이션이있는 다음보기 컨트롤러로 이동하려면 어떻게해야합니까? 스 와이프 애니메이션과 감지로 시도했지만 저에게 효과적이지 않았습니다. 어디에서 코드를 작성하고 도움을 요청해야합니까? !!
대답 2 부 .->
시도하고 :
안녕하세요 @iOSNiks 감사합니다. 나는 그것과 비슷하게했고 그것은 나를 위해 일했습니다. 답장을 보내 주셔서 감사 드리며 튜토리얼과 소스 코드를 다시 확인했지만 여전히 페이지 표시가 나타나지 않는 이유를 해결할 수 없었습니다. 이제 지표의 맞춤 이미지를 추가 할 것입니다. – sac