如何使用Page Control和UIScrollView自定义每个页面的内容?

时间:2009-08-20 06:56:00

标签: iphone objective-c uiscrollview uipagecontrol

我在使用pagecontrol和UIScrollView自定义每个页面时遇到问题。 我正在从Apple定制Page Control

基本上我希望每个页面在不同的页面上交替显示文本和图像。第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";
    }

}

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

3 个答案:

答案 0 :(得分:0)

我下载了示例,将以下行添加到MyViewController.h

IBOutlet UILabel *pageText;

@property (nonatomic, retain) UILabel *pageText;

在MyViewController.m中我添加了@synthesize pageText; line和viewDidLoad内容。

我在界面构建器中打开了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];
    }   
}

答案 1 :(得分:0)

这个答案的代码很少,因为我没有明显的例子。您基本上希望拥有一些页面数组,其中包含每个页面的视图(或视图控制器)。阵列中的每个视图/控制器都没有必要相同(尽管您应该拥有所有视图或所有视图控制器,而不是两者)。完成后,您可以根据要加载的页面加载不同的内容。

这有意义吗?

答案 2 :(得分:0)

尝试从SVN repo下载此项目。我一直无法完成文档,但查看了IGUIScrollViewElements ...有一个IGUIScrollViewImage的简短示例,代码非常相似......我会尽力完成余下的示例... < / p>

http://code.google.com/p/iphone-guru-uilibrary/