RootViewController.m
#import "RootViewController.h"
#import "SecondViewController.h"
@interface RootViewController ()<UITableViewDataSource,UITableViewDelegate,SecondViewControllerDelegate>
@property(nonatomic, retain)UITableView *tableView;
@property(nonatomic, retain)NSMutableArray *array;
@end
@implementation RootViewController
- (void)dealloc
{
[_array release];
[_tableView release];
[super dealloc];
}
- (instancetype)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
self.array = [NSMutableArray arrayWithObjects:@"宋江", @"卢俊义", @"吴用", @"公孙胜", @"关胜", @"林冲", @"秦明" ,@"呼延灼" , @"花荣",@"柴进", @"李应", @"朱仝",@"鲁智深",@"武松",nil];
}
return self;
}
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColor whiteColor];
self.tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height) style:UITableViewStylePlain];
self.tableView.backgroundColor = [UIColor greenColor];
[self.view addSubview:self.tableView];
[_tableView release];
self.tableView.dataSource = self;
self.tableView.delegate = self;
self.tableView.rowHeight = 100;
NSString *path = [[NSBundle mainBundle] pathForResource:@"Student" ofType:@"plist"];
NSDictionary *dic = [NSDictionary dictionaryWithContentsOfFile:path];
NSLog(@"%@",dic);
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return self.array.count;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *reuse = @"reuse";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:reuse];
if (!cell) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:reuse] autorelease];
}
cell.textLabel.text = self.array[indexPath.row];
cell.detailTextLabel.text = @"水浒";
cell.imageView.image = [UIImage imageNamed:@"10.jpg"];
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSLog(@"%ld", indexPath.row);
SecondViewController *second = [[SecondViewController alloc] init];
[self.navigationController pushViewController:second animated:YES];
[second release];
second.str = self.array[indexPath.row];
second.delegate = self;
}
- (void)takeValue:(NSString *)strValue {
[self.array addObject:strValue];
[self.tableView reloadData];
}
SecondViewController.h
#import <UIKit/UIKit.h>
@protocol SecondViewControllerDelegate <NSObject>
- (void)takeValue:(NSString *)strValue;
@end
@interface SecondViewController : UIViewController
@property(nonatomic, copy)NSString *str;
@property(nonatomic, assign)id<SecondViewControllerDelegate>delegate;
@end
SecondViewController.m
#import "SecondViewController.h"
@interface SecondViewController ()
@property(nonatomic, retain)UITextField *textField;
@end
@implementation SecondViewController
- (void)dealloc
{
[_textField release];
[super dealloc];
}
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColor whiteColor];
self.textField = [[UITextField alloc] initWithFrame:CGRectMake(100, 100, 200, 50)];
self.textField.layer.borderWidth = 1;
self.textField.layer.cornerRadius = 10;
[self.view addSubview:self.textField];
[_textField release];
self.textField.text = self.str;
UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];
button.frame = CGRectMake(100, 200, 200, 50);
[button setTitle:@"返回" forState:UIControlStateNormal];
button.layer.borderWidth = 1;
button.layer.cornerRadius = 10 ;
[self.view addSubview:button];
[button addTarget:self action:@selector(clickAction:) forControlEvents:UIControlEventTouchUpInside];
}
- (void)clickAction:(UIButton *)button {
[self.navigationController popToRootViewControllerAnimated:YES];
[self.delegate takeValue:self.textField.text];
}