从viewControllers iOS

时间:2016-02-29 14:30:14

标签: ios objective-c viewcontroller

  

iPhone开发时的超级NOOB

我有一个标签栏控制器的三个视图控制器。 我想要的是当我按下按钮时,第一个视图中 TextFields 的数据被获取并显示。

在我的firstViewController.h中,我已声明 TextFields ,如下所示:

IBOutlet UITextField * driver;
IBOutlet UITextField * phone;
IBOutlet UITextField * poe;
IBOutlet UITextField * doe;
IBOutlet UITextField * coe;
IBOutlet UITextField * dod;
IBOutlet UITextField * customer;
IBOutlet UITextField * customerContact;
IBOutlet UITextField * customerTank;
IBOutlet UITextField * trailer;
IBOutlet UITextField * truck; 

然后在我的 Main.storyboard 中,我已将商店连接到每个 TextField

现在我认为只是将 firstViewController.h 导入我的 thirdViewController.h ,使用 #import“”以某种方式检查何时触发按钮点击。但就NOOBines来说,它似乎并不那么容易。

  

我认为在thirdViewController.h中做这样的事情可能会产生魔力:

#import <UIKit/UIKit.h>
#import "FirstViewController.h"
@interface ThirdViewController : UIViewController{
NSString *theDriver = [driver.text];
}
@end

1 个答案:

答案 0 :(得分:1)

不幸的是,这并不容易。假设在你的第一个和第三个之间有一个secondViewController,你将使用这个方法在segue期间传递变量。在你的第二个视图控制器的.h文件中定义一些变量,如驱动程序,电话等,然后从你拥有的那些值中分配这些值

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
        if ([segue.identifier isEqualToString:@"the name of your segue"]) {
            secondViewController *secondVC = segue.destinationViewController;
            secondVC.driver = self.driver.text;
            secondVC.phone = self.phone.text;
           //continue typing your values and use this to carry this same method in your secondViewController to carry them into your thirdViewController
}

编辑1:

这是我在我的应用程序中使用的一个示例,我正在查看游戏列表,我想看一个单独的游戏。这是MatchesViewController.m文件中的代码。我有我的gameObject(在你的情况下gameObject将是文本),我想将它发送到下一个视图控制器。我也在“MatchesViewController.m”

中导入了这个
#import "EachMatchViewController.h"


- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    if ([segue.identifier isEqualToString:@"showOneGame"]) {
        EachMatchViewController *eachVC = segue.destinationViewController;
        eachVC.gameObject = self.gameObject;
    }
}

这是我的“EveryMatchViewController.h”中定义的内容,它是我要访问的视图控制器。

@property (strong, nonatomic) PFObject *gameObject;

我的“EveryMatchViewController.m”中的一些我可以使用它传递的数据。