0

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

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

}

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

4

3 回答 3

0

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

IBOutlet UILabel *pageText;

@property (nonatomic, retain) UILabel *pageText;

在 MyViewController.m 我添加了@synthesize pageText;行和您的 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];
    }   
}
于 2009-08-20T07:09:24.047 回答
0

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

那有意义吗?

于 2009-08-20T07:15:59.493 回答
0

尝试从 SVN repo 下载这个项目。我一直无法完成文档,但请查看 IGUIScrollViewElements ... IGUIScrollViewImage 有一个简短示例,代码非常相似...我会尽快完成其余示例的示例...

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

于 2010-04-12T15:51:43.953 回答