Iphone 如何使用页面控件和UIScrollView自定义每个页面的内容?

Iphone 如何使用页面控件和UIScrollView自定义每个页面的内容?,iphone,objective-c,uiscrollview,uipagecontrol,Iphone,Objective C,Uiscrollview,Uipagecontrol,我无法使用pagecontrol和UIScrollView自定义每个页面。 我从苹果公司定制 基本上我想有不同的文本和图像交替在不同的页面上的每一页。第1页将包含所有文本,第2页将仅包含图像,第3页将包含所有文本并继续 这是原始代码: // Set the label and background color when the view has finished loading. - (void)viewDidLoad { pageNumberLabel.text

我无法使用pagecontrol和UIScrollView自定义每个页面。 我从苹果公司定制

基本上我想有不同的文本和图像交替在不同的页面上的每一页。第1页将包含所有文本,第2页将仅包含图像,第3页将包含所有文本并继续

这是原始代码:

    // Set the label and background color when the view has finished loading.
    - (void)viewDidLoad {
        pageNumberLabel.text = [NSString stringWithFormat:@"Page %d", pageNumber + 1];
        self.view.backgroundColor = [MyViewController pageControlColorWithIndex:pageNumber];
}
如您所见,当您向右滚动时,此代码仅显示第1页、第2页等

我试图输入这个新代码,但没有任何区别。没有错误。 我知道这是非常简单的代码。我不知道为什么它不起作用

我将pageText声明为UILabel

// Set the label and background color when the view has finished loading.
- (void)viewDidLoad {
    pageNumberLabel.text = [NSString stringWithFormat:@"Page %d", pageNumber + 1];
    self.view.backgroundColor = [MyViewController pageControlColorWithIndex:pageNumber];
    if (pageNumber == 1) {
        pageText.text = @"Text in page 1";
    }
    if (pageNumber == 2) {
            pageText.text = @"Image in page 2";
    }
    if (pageNumber == 3) {
            pageText.text = @"Text in page 3";
    }

}

我不知道为什么它不起作用。如果你有更好的方法,请告诉我。谢谢。

我下载了这个示例,在MyViewController.h中添加了以下行

IBOutlet UILabel *pageText;

@property (nonatomic, retain) UILabel *pageText;
在MyViewController.m中,我添加了@synthesis pageText;行和viewDidLoad内容

我在interface builder中打开了MyView.xib/en文件,并连接了新标签。编译并运行后,大部分情况下都能正常工作。唯一似乎不对的是,它落后了一页。所以我重写了它,以适当地处理奇数页或偶数页

- (void)viewDidLoad {
    pageNumberLabel.text = [NSString stringWithFormat:@"Page %d", pageNumber + 1];
    self.view.backgroundColor = [MyViewController pageControlColorWithIndex:pageNumber];
    if (pageNumber % 2) {
        pageText.text = [NSString stringWithFormat:@"Image in page %d", pageNumber + 1];
    } else {
        pageText.text = [NSString stringWithFormat:@"Text in page %d", pageNumber +1];
    }   
}

这个答案将有很少的代码,因为我没有明确的例子。您基本上希望有一些页面数组,其中包含每个页面的视图(或视图控制器)。阵列中的每个视图/控制器不必相同(尽管您应该使其为所有视图或所有视图控制器,而不是两者)。一旦你有了它,你就可以根据你正在加载的页面来加载不同的东西


这有意义吗?

尝试从SVN repo下载此项目。我无法完成文档,但请签出IGUIScrollViewElements。。。有一个iGuisCollViewImage的简短示例,代码非常类似。。。我会尽我最大的努力尽快完成剩下的例子


谢谢你,伙计。我想我忘了将pageText连接到nib文件。我这样做了,并把你的代码-工程罚款!但是,如何自定义每个页面?比如说,第1页-你放了一些文本第2页-你放了一个图像(如果你能给代码也放图像的话,这是非常有用的)第3页-你放了一些文本-但是不同的文本。第4页-您还放置了不同的图像,当您将新代码放在if语句下时,它会覆盖pageNumberLabel的第一行代码。你是怎么把pageNumberLabel和pageText分开的,当然是在同一页上,内容不同?我明白了。我创建了一个指向pageText的UIlabel,因此将其与pageNumberLabel分开。我使用的是if语句-工作正常。谢谢你,伙计!没错,伙计。我可以不使用数组而使用字符串或图像吗?如果我使用阵列,如果基于Apple的页面控制,如何实现这一点?