UI5_HomeWorkCompanyViewController

//
//  ItemCompany.h
//  UI5_HomeWork
//
//  Created by zhangxueming on 15/7/3.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface ItemCompany : NSObject

@property (nonatomic, copy) NSString *companyName;
@property (nonatomic, copy) NSString *personName;
@property (assign,nonatomic) NSInteger money;

@end

//
//  ItemCompany.m
//  UI5_HomeWork
//
//  Created by zhangxueming on 15/7/3.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import "ItemCompany.h"

@implementation ItemCompany

@end
//
//  ResultViewController.h
//  UI5_HomeWork
//
//  Created by zhangxueming on 15/7/3.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface ResultViewController : UIViewController

- (void)showResult;

@end

//
//  ResultViewController.m
//  UI5_HomeWork
//
//  Created by zhangxueming on 15/7/3.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import "ResultViewController.h"
#import "AppDelegate.h"
#import "ItemCompany.h"

@interface ResultViewController ()

@end

@implementation ResultViewController
{
    //AppDelegate *delegate;
}
- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    CGRect frame = self.view.frame;
    frame.size.height = self.view.frame.size.height-100;
    self.view.frame = frame;
    //delegate =[[AppDelegate alloc] init];
    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 50, self.view.frame.size.width, self.view.frame.size.height-100)];
    //label.backgroundColor= [UIColor cyanColor];
    //label.alpha = 0.8;
    label.numberOfLines  = 0;
    label.textAlignment = NSTextAlignmentCenter;
    label.font = [UIFont systemFontOfSize:24];
    label.textColor  = [UIColor blackColor];
    label.text = @"显示结果:\n";
    label.tag = 200;
    [self.view addSubview:label];

    self.view.backgroundColor = [UIColor whiteColor];

}

- (void)showResult
{
    UIApplication  *app = [UIApplication sharedApplication];
    AppDelegate *delegate = app.delegate;
    NSString *str = @"";
     //NSLog(@"%@",((ItemCompany *)[delegate.items objectAtIndex:0]).companyName);
    for (ItemCompany *item in delegate.items) {
        NSString *subStr = [NSString stringWithFormat:@"%@-%@-%li\n",item.companyName,item.personName,item.money];
        str = [str stringByAppendingString:subStr];
    }
    UILabel *label = (UILabel *)[self.view viewWithTag:200];
    label.text = str;
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

/*
#pragma mark - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
}
*/

@end
//
//  CompanyViewController.h
//  UI5_HomeWork
//
//  Created by zhangxueming on 15/7/3.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface CompanyViewController : UIViewController <UITextFieldDelegate>

@end

//
//  CompanyViewController.m
//  UI5_HomeWork
//
//  Created by zhangxueming on 15/7/3.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import "CompanyViewController.h"
#import "AppDelegate.h"
#import "ItemCompany.h"

@interface CompanyViewController ()

@end

@implementation CompanyViewController
{
   // UIApplication *app;
AppDelegate *delegate;
}
- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    CGRect frame = self.view.frame;
    frame.size.height = self.view.frame.size.height-100;
    self.view.frame = frame;
        delegate =[[AppDelegate alloc] init];
   // app = [UIApplication sharedApplication];
    //delegate = delegate;
    NSArray *textArray = @[@"公司名称",@"法人名称",@"注册资金"];
    for (int i=0; i<3; i++) {
        UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(10, 100+80*i, 100, 50)];
        //label.backgroundColor = [UIColor greenColor];
        label.text  = textArray[i];
        label.textAlignment = NSTextAlignmentCenter;
        [self.view addSubview:label];

        UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(110, 100+80*i, self.view.frame.size.width-130, 50)];
        textField.borderStyle = UITextBorderStyleRoundedRect;
        NSString *holder = [NSString stringWithFormat:@"请输入%@", textArray[i]];
        textField.placeholder = holder;
        textField.returnKeyType = UIReturnKeyDone;
        textField.tag = 200+i;
        textField.delegate = self;
        [self.view addSubview:textField];
    }

    UIButton *saveBtn= [UIButton buttonWithType:UIButtonTypeSystem];
    saveBtn.frame = CGRectMake(100, self.view.frame.size.height-60, self.view.frame.size.width-200, 40);
    [saveBtn setTitle:@"保存" forState:UIControlStateNormal];
    saveBtn.titleLabel.font = [UIFont systemFontOfSize:24];
    [saveBtn addTarget:self action:@selector(btnClicked) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:saveBtn];
    self.view.backgroundColor = [UIColor yellowColor];

}

- (void)btnClicked
{
//    UIApplication *app = [UIApplication sharedApplication];
   // AppDelegate *delegate = app.delegate;

    ItemCompany *item = [[ItemCompany alloc] init];
    item.companyName = ((UITextField *)[self.view viewWithTag:200]).text;
    item.personName = ((UITextField *)[self.view viewWithTag:201]).text;
    item.money = [((UITextField *)[self.view viewWithTag:202]).text integerValue];

    if (item.companyName && item.personName) {
        [delegate.items addObject:item];
    }
    NSLog(@"%@",((ItemCompany *)[delegate.items objectAtIndex:0]).companyName);
}

#pragma mark ---UITextFieldDelegate---

- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
    [textField resignFirstResponder];
    return YES;
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

/*
#pragma mark - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
}
*/

@end
//
//  AppDelegate.h
//  UI5_HomeWork
//
//  Created by zhangxueming on 15/7/3.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import <UIKit/UIKit.h>
#import <CoreData/CoreData.h>

@interface AppDelegate : UIResponder <UIApplicationDelegate>

//通过可变数组共享数据
@property (strong, nonatomic) NSMutableArray *items;

@property (strong, nonatomic) UIWindow *window;

@property (readonly, strong, nonatomic) NSManagedObjectContext *managedObjectContext;
@property (readonly, strong, nonatomic) NSManagedObjectModel *managedObjectModel;
@property (readonly, strong, nonatomic) NSPersistentStoreCoordinator *persistentStoreCoordinator;

- (void)saveContext;
- (NSURL *)applicationDocumentsDirectory;

@end

//
//  AppDelegate.m
//  UI5_HomeWork
//
//  Created by zhangxueming on 15/7/3.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import "AppDelegate.h"

@interface AppDelegate ()

@end

@implementation AppDelegate

- (instancetype)init
{
    if (self = [super init]) {
        self.items = [NSMutableArray array];
    }
    return self;
}

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.

    return YES;
}
//
//  ViewController.h
//  UI5_HomeWork
//
//  Created by zhangxueming on 15/7/3.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController

@end

//
//  ViewController.m
//  UI5_HomeWork
//
//  Created by zhangxueming on 15/7/3.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import "ViewController.h"
#import "ResultViewController.h"
#import "CompanyViewController.h"

@interface ViewController ()
{
    ResultViewController *_resultController;
    CompanyViewController *_companyController;
}
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    _companyController = [[CompanyViewController alloc] init];
    _resultController = [[ResultViewController alloc] init];

    [self.view addSubview:_companyController.view];
    [self.view addSubview:_resultController.view];
    //设置view隐藏
    _resultController.view.hidden = YES;

    NSArray *titles= @[@"公司",@"结果"];
    CGFloat size = (self.view.frame.size.width-150)/2;
    for (int i=0; i<2; i++) {
        UIButton *btn = [UIButton buttonWithType:UIButtonTypeSystem];
        btn.frame = CGRectMake(50+(50+size)*i, self.view.frame.size.height-100+30, size, 40);
        [btn setTitle:titles[i] forState:UIControlStateNormal];
        btn.titleLabel.font = [UIFont systemFontOfSize:24];
        btn.tag = 200+i;
        [btn addTarget:self action:@selector(btnClicked:) forControlEvents:UIControlEventTouchUpInside];
        [self.view addSubview:btn];
    }
    self.view.backgroundColor = [UIColor cyanColor];
}

- (void)btnClicked:(UIButton *)btn
{
    if (btn.tag==200) {
        //公司
        _companyController.view.hidden = NO;
        _resultController.view.hidden = YES;
    }
    else if(btn.tag==201)
    {
        //结果
        _companyController.view.hidden = YES;
        _resultController.view.hidden = NO;
        [_resultController showResult];
    }
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end
时间: 2024-10-29 04:35:26

UI5_HomeWorkCompanyViewController的相关文章