【发布时间】:2014-07-27 17:02:49
【问题描述】:
简介
Hello world,我是 Objective C 的新手,我一直在尝试使用 PageViewController。我在制作这个应用程序时遇到的一个问题是根据PageViewController 更改按钮的操作。我已经通过多种方式处理了这种情况。
情况
我试图创建一个PageViewController 来帮助玩家选择游戏主题,但为了做到这一点,我需要弄清楚这个问题的答案。我遵循了这个tutorial,除了我去掉了startWalkthrough按钮,因为它是不必要的,我更改了self.pageViewController.view = CGRectMake(0, 100, self.view.frame.size.width, self.view.frame.size.height - 200);以及更改主视图控制器上的NSArray_pageTitles = @[@"Theme 1", @"Theme 2", @"Theme 3", @"Theme 4"];,以便为按钮等提供更多空间。
我制作了一个新按钮 (chooseButton) 和一个标签 (themeTitles),作为示例来检查应用程序是否意识到它在主视图控制器上是哪个主题。我尝试使用以下代码行:
- (IBAction)chooseButton:(id)sender {
if () {
_themeTitles.text = @"You chose theme 1";
}
if () {
_themeTitles.text = @"You chose theme 2";
}
if () {
_themeTitles.text = @"You chose theme 3";
}
if () {
_themeTitles.text = @"You chose theme 4";
}
}
您可能会注意到条件为空白。这是我尝试过各种事情的部分。这可能包括使用其他头文件中的属性,或在其自己的头文件中声明的属性,例如声明PageContentViewController *pageContentViewController;,然后说if (pageContentViewController.pageIndex == 0)等等直到等于3,或者说if (pageContentViewController.titleText isEqual: @"Theme 1")。
当然,我还尝试在导入 AppDelegate *appDelegate; 并将 UIPageControl 公开为属性并将currentPage 属性设置为 if (AppDelegate.pageControl.currentPage == 0) 等之后声明它。
每一个选项我都快用尽了,而他们最终都在界面上为它所在的每个当前页面显示“你选择了主题 1”,或者根本不显示任何内容。
归根结底,关键是,我可以在 if 语句中加入什么条件才能让这个东西正常工作?
【问题讨论】:
标签: ios objective-c uibutton xcode5 uipageviewcontroller