私は2つのTableViewControllerを持っています。ユーザーが UIBarButtonItem をタップすると、UITextField、runnameField からのテキストが SaveViewController に保存されます。runnameField のテキストを取り、それを配列 runsArray に入れる必要があります。RecordVC では、tableView のデータは runsArray から取得する必要があります。誰かがこれで私を助けてくれますか? 私は長い間グーグルで検索してきましたが、答えが見つかりません。
SaveViewController.h:
#import <UIKit/UIKit.h>
#import "RecordsViewController.h" //Next ViewController
@interface SaveViewController : UITableViewController <UITableViewDataSource,UITableViewDelegate> {
__weak IBOutlet UITextField *runnameField;
RecordsViewController *RecordsVCData;
}
@property (weak, nonatomic) IBOutlet UITextField *runnameField;
@property (weak, nonatomic) IBOutlet UITextView *runnotesTextView;
@property (weak, nonatomic) IBOutlet UIBarButtonItem *saveBarItem;
@property (nonatomic, retain) RecordsViewController *RecordsVCData;
- (IBAction)saverun:(UIBarButtonItem *)sender;
- (IBAction)goAwayKeyboard:(id)sender;
@end
SaveViewController.m:
- (IBAction)saverun:(UIBarButtonItem *)sender {
RecordsViewController *RecordsVC = [[RecordsViewController alloc] initWithNibName:nil bundle:nil];
RecordsVC.tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStyleGrouped];
self.RecordsVCData = RecordsVC;
[RecordsVC.runsArray addObject:[NSString stringWithFormat:@"%@", runnameField.text]];
[self presentModalViewController:RecordsVC animated:YES];
}
- (IBAction)goAwayKeyboard:(id)sender {
[sender resignFirstResponder];
}
RecordsViewController.h:
#import <UIKit/UIKit.h>
@interface RecordsViewController : UITableViewController <UITableViewDataSource, UITableViewDelegate> {
NSMutableArray *runsArray;
}
@property (weak, nonatomic) NSString *runname;
@property (strong, nonatomic) NSString *runnotes;
@property (weak, nonatomic) UITableViewCell *cell;
@property (retain,nonatomic) NSMutableArray *runsArray;
@end
RecordsViewController.m:
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath: (NSIndexPath *)indexPath {
// Identifier for retrieving reusable cells.
static NSString *cellIdentifier = @"MyCellIdentifier";
// Attempt to request the reusable cell.
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
// No cell available - create one
if(cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:cellIdentifier];
[cell.textLabel setText:[NSString stringWithFormat:@"%@",[runsArray objectAtIndex:indexPath.row]]];
}
// Set the text of the cell to the runnamestring.
[cell.textLabel setText:[NSString stringWithFormat:@"%@",[runsArray objectAtIndex:indexPath.row]]];
return cell;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [runsArray count];
}
どんな助けでも大歓迎です。
ありがとう、
ドゥルヴ