搜索

首页  >  问答  >  正文

objective-c - 如何从tableViewcontroller中调用变量?

如题,继续小白学Ob-c,先谢各位大大!
想要把textfield中输入的变量存储在table中,附上代码:
在HWviewcontroller中的:
'''

import "HWViewController.h"

import "HWTableViewController.h"

@interface HWViewController ()
@property (nonatomic, strong) HWTableViewController *myTableViewController;

@property (strong, nonatomic) IBOutlet UISegmentedControl *mySegmentedControl;

@property (strong, nonatomic) IBOutlet UITextField *main;
@property (strong, nonatomic) IBOutlet UITextField *detail;
@property (strong, nonatomic) IBOutlet UIButton *addButton;
@property (strong, nonatomic) IBOutlet UIButton *showButton;
@property (strong, nonatomic) NSMutableDictionary *myItem;
@property (strong, nonatomic) NSString *combinedWord;
@end

@implementation HWViewController

}
- (BOOL)textFieldShouldReturn:(UITextField *)textField{

NSLog(@"return button pressed");

[self.main resignFirstResponder];
[self.detail resignFirstResponder];
return YES;

}
-(IBAction)addPressed:(id)sender {
NSString *item=self.main.text;
NSString *detail=self.detail.text;
NSString *combine=[NSString stringWithFormat:@"%@%@",item,detail];
self.combinedWord=combine;
NSMutableArray *myWordArray = [[NSMutableArray alloc] init];
[myWordArray addObject:item];
[myWordArray addObject:detail];
[self.myItem setObject:myWordArray forKey:combine];

}
-(IBAction)showPressed:(id)sender {
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:self.myTableViewController];

UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithTitle:@"Return"
                                                               style:UIBarButtonItemStyleDone target:self
                                                              action:@selector(dismissModalViewControllerAnimated:)];
[self.myTableViewController.navigationItem setLeftBarButtonItem:doneButton];


[self presentViewController:navController animated:YES completion:nil];

}

'''

然后tableviewcontroller的:
'''

import "HWTableViewController.h"

@interface HWTableViewController ()

@end

@implementation HWTableViewController

}

pragma mark - Table view data source

阿神阿神2768 天前416

全部回复(1)我来回复

  • 怪我咯

    怪我咯2017-04-22 09:02:41

    cell.textLabel.text = 这里想是self.main
    cell.detailTextLabel.text = 这里像是self.detail
    这样显然是不行的,因为你的tableview里面根本就没有self.main,self.detail这2个值,
    这个其实想解决有好几种方式,其中最简单的做法是在tableview中声明2个属性,跳转控制器之前把tableview的2个属性赋值.(记住,tableview有代理和数据源)

    退出键盘有一种更方便的方式
    [self.view endEditing:YES];

    回复
    0
  • 取消回复