是否可以在一个.h文件中有两个视图Controller的IBOutlet?如何移动到上一个视图?

时间:2011-08-11 13:26:26

标签: iphone objective-c cocoa-touch

我正在使用XCode 4。

在我的应用中 我有文件

  • WelcomeViewController
  • FirstViewController
  • SecondViewController
  • ThirdViewController

在每个视图中,我都有相同的功能。

按下按钮并加载另一个视图by presentModelViewController ..

我面临的问题是我无法在一个头文件中声明两个出口如同我想要移到后页。?

#import <UIKit/UIKit.h>

#import "ThirdViewController.h"

#import "FirstViewController.h"

@interface SecondViewController : UIViewController {
    UIButton *button1;
}

@property (nonatomic,retain) IBOutlet ThirdViewController *thirdVC;
@property (nonatomic,retain)  IBOutlet FirstViewController *firstVC;
//Error at this line above 
@property (nonatomic,retain) IBOutlet UIButton *button1;

@end

分配和初始化新控制器是一个好习惯,还是只需要在XIB文件中使用视图控制器,然后创建Outleyts ??? 是的,你是对的,我已经尝试过它了......但是为什么我要使用View Controller因为我可以跳到之前的视图?有什么问题如果我拿一个IBOutlet。???

那么,如果我想移动上一个视图,我需要写一下 两次 [self dismisviewContrlloer animated:YES];

[self dismisviewContrlloer animated:YES]; ????

3 个答案:

答案 0 :(得分:1)

实际上,您需要做的就是[self dismissModalViewControllerAnimated:YES];如果第三个视图可见,第二个视图将自动变为可见。同样从第2个到第1个。您实际上不需要在每个视图控制器中存储对相邻视图控制器的引用。

HTH,

阿克沙伊

答案 1 :(得分:1)

为什么你想要3个网点?只需拥有viewcontroller的属性。 Alloc和init并呈现相同控制器类的视图。

所以基本上你会有一个用于viewcontroller的xib文件,你需要根据你的要求创建尽可能多的实例。看看代码,我认为它需要大量的重新设计。您相应地提出并驳回了这些观点。

答案 2 :(得分:0)

[self.parentViewContrtoller.parentViewController dismissModalViewControllerAnimated:YES];

通过这种方法,我可以跳回上一步到前一步。