zoukankan      html  css  js  c++  java
  • UI4_注册登录界面

    //
    //  ViewController.h
    //  UI4_注册登录界面
    //
    //  Created by zhangxueming on 15/7/3.
    //  Copyright (c) 2015年 zhangxueming. All rights reserved.
    //
    
    #import <UIKit/UIKit.h>
    #import "RegisterViewController.h"
    
    @interface ViewController : UIViewController <UITextFieldDelegate,SendDelegateReport>
    
    
    @end
    
    
    
    //
    //  ViewController.m
    //  UI4_注册登录界面
    //
    //  Created by zhangxueming on 15/7/3.
    //  Copyright (c) 2015年 zhangxueming. All rights reserved.
    //
    
    #import "ViewController.h"
    #import "RegisterViewController.h"
    #import "LoginViewController.h"
    
    @interface ViewController ()
    {
    RegisterViewController *regis;
    }
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        // Do any additional setup after loading the view, typically from a nib.
        
        NSArray *textArray = @[@"用户名",@"密码"];
        NSArray *titles = @[@"注册",@"登录"];
        CGFloat size = (self.view.frame.size.width-150)/2;
        
        for (int i=0; i<2; i++) {
            UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(20, 100+80*i, 80, 50)];
            label.text = textArray[i];
            label.textAlignment = NSTextAlignmentCenter;
            label.font = [UIFont boldSystemFontOfSize:24];
            label.textColor = [UIColor redColor];
            //label.backgroundColor = [UIColor whiteColor];
            [self.view addSubview:label];
            
            UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(100, 100+80*i, self.view.frame.size.width-120, 50)];
            textField.borderStyle = UITextBorderStyleRoundedRect;
            NSString *holder = [NSString stringWithFormat:@"请输入%@", textArray[i]];
            textField.placeholder = holder;
            textField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
            textField.returnKeyType = UIReturnKeyDone;
            textField.tag = 200+i;
            textField.delegate = self;
            [self.view addSubview:textField];
            
            
            UIButton *btn = [UIButton buttonWithType:UIButtonTypeSystem];
            btn.frame = CGRectMake(50+i*(size+50), 400, size, 50);
            //btn.backgroundColor = [UIColor cyanColor];
            [btn setTitle:titles[i] forState:UIControlStateNormal];
            btn.titleLabel.font = [UIFont systemFontOfSize:24];
            
            btn.tag = 300+i;
            [btn addTarget:self action:@selector(btnClicked:) forControlEvents:UIControlEventTouchUpInside];
            
            [self.view addSubview:btn];
        }
        
        self.view.backgroundColor = [UIColor yellowColor];
    }
    
    - (void)btnClicked:(UIButton *)btn
    {
        if (btn.tag == 300) {
            //注册
            regis = [[RegisterViewController alloc] init];
             regis.delegate = self;//设置代理
            
    //        regis.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
    //        [self presentViewController:regis  animated:YES completion:nil];
            
            [self.view addSubview:regis.view];
        }
        else if (btn.tag==301)
        {
            //登录
            LoginViewController *login = [[LoginViewController alloc] init];
            login.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
            [self presentViewController:login animated:YES completion:nil];
        }
    }
    #pragma mark ---SendDelegateReport---
    
    - (void)sendName:(NSString *)name andPassword:(NSString *)password
    {
        UITextField *textField1 = (UITextField *)[self.view viewWithTag:200];
        UITextField *textField2 = (UITextField *)[self.view viewWithTag:201];
        textField1.text = name;
        textField2.text = password;
    }
    
    #pragma mark ---UITextFiledDelegate---
    - (BOOL)textFieldShouldReturn:(UITextField *)textField
    {
        //隐藏键盘
        [textField resignFirstResponder];
        return YES;
    }
    
    - (void)didReceiveMemoryWarning {
        [super didReceiveMemoryWarning];
        // Dispose of any resources that can be recreated.
    }
    
    @end
    
    //
    //  RegProtocol.h
    //  UI4_注册登录界面
    //
    //  Created by qianfeng on 15/7/4.
    //  Copyright (c) 2015年 zhangxueming. All rights reserved.
    //
    
    #import <Foundation/Foundation.h>
    
    @protocol SendDelegateReport <NSObject>
    - (void)sendName:(NSString *)name andPassword:(NSString *)password;
    @end
    
    //
    //  RegisterViewController.h
    //  UI4_注册登录界面
    //
    //  Created by zhangxueming on 15/7/3.
    //  Copyright (c) 2015年 zhangxueming. All rights reserved.
    //
    
    #import <UIKit/UIKit.h>
    #import "SendDelegateReport.h"
    //制定协议
    //@protocol SendDelegateReport <NSObject>
    //
    //- (void)sendName:(NSString *)name andPassword:(NSString *)password;
    //
    //@end
    
    @interface RegisterViewController : UIViewController <UITextFieldDelegate>
    
    @property (assign, nonatomic) id <SendDelegateReport>delegate;
    
    @end
    
    
    //
    //  RegisterViewController.m
    //  UI4_注册登录界面
    //
    //  Created by zhangxueming on 15/7/3.
    //  Copyright (c) 2015年 zhangxueming. All rights reserved.
    //
    
    #import "RegisterViewController.h"
    #import "ViewController.h"
    @interface RegisterViewController ()
    {
        ViewController *v;
    }
    @end
    
    @implementation RegisterViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
         v = [[ViewController alloc] init];
        // Do any additional setup after loading the view.
        NSArray *textArray = @[@"用户名",@"密码",@"邮箱"];
        for (int i=0; i<3; i++) {
            UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(20, 100+i*80, 80, 50)];
            label.text = textArray[i];
            label.textAlignment = NSTextAlignmentCenter;
            label.font = [UIFont systemFontOfSize:24];
            [self.view addSubview:label];
            
            UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(100, 100+i*80, self.view.frame.size.width-120, 50)];
            textField.borderStyle = UITextBorderStyleRoundedRect;
            NSString *holder = [NSString stringWithFormat:@"请输入%@", textArray[i]];
            textField.tag = 200+i;
            textField.placeholder =holder;
            textField.returnKeyType = UIReturnKeyDone;
            textField.delegate = self;
            [self.view addSubview:textField];
        }
        
        CGFloat size = (self.view.frame.size.width-150)/2;
        NSArray *titles = @[@"取消",@"保存"];
        
        for (int i=0; i<2; i++) {
            UIButton *btn = [UIButton buttonWithType:UIButtonTypeSystem];
            btn.frame = CGRectMake(50+(size+50)*i, 400, size, 50);
            [btn setTitle:titles[i] forState:UIControlStateNormal];
            btn.titleLabel.font = [UIFont systemFontOfSize:24];
            btn.tag = 300+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==300) {
            //取消
        }
        else if(btn.tag == 301)
        {   //保存
            SEL select = NSSelectorFromString(@"sendName:andPassword:");
            
           
           // self.delegate = v;
            if ([self.delegate respondsToSelector:select]) {
                [self.delegate sendName:((UITextField *)[self.view viewWithTag:200]).text andPassword:((UITextField *)[self.view viewWithTag:201]).text];
            }
        }
         //[self dismissViewControllerAnimated:YES completion:nil];
        
        //[self    presentViewController:v animated:YES completion:nil];
        
        if([self.view superview])
        {
            [self.view removeFromSuperview];
        }
    }
    
    - (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
    
    //
    //  LoginViewController.h
    //  UI4_注册登录界面
    //
    //  Created by zhangxueming on 15/7/3.
    //  Copyright (c) 2015年 zhangxueming. All rights reserved.
    //
    
    #import <UIKit/UIKit.h>
    
    @interface LoginViewController : UIViewController
    
    @end
    
    
    
    //
    //  LoginViewController.m
    //  UI4_注册登录界面
    //
    //  Created by zhangxueming on 15/7/3.
    //  Copyright (c) 2015年 zhangxueming. All rights reserved.
    //
    
    #import "LoginViewController.h"
    
    @interface LoginViewController ()
    
    @end
    
    @implementation LoginViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        // Do any additional setup after loading the view.
        UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(50,200, self.view.frame.size.width-100, 100)];
        label.text = @"登录成功";
        label.font = [UIFont italicSystemFontOfSize:35];
        label.textAlignment  = NSTextAlignmentCenter;
        label.textColor = [UIColor redColor];
        [self.view addSubview:label];
        
        UIButton *btn = [UIButton buttonWithType:UIButtonTypeSystem];
        btn.frame = CGRectMake(50, 400, self.view.frame.size.width-100, 50);
        [btn setTitle:@"退出登录" forState:UIControlStateNormal];
        btn.titleLabel.font = [UIFont systemFontOfSize:24];
        [btn addTarget:self action:@selector(btnClicked) forControlEvents:UIControlEventTouchUpInside];
        [self.view addSubview:btn];
        
        self.view.backgroundColor = [UIColor greenColor];
    }
    
    - (void)btnClicked
    {
        [self dismissViewControllerAnimated:YES completion:nil];
    }
    
    - (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
    
  • 相关阅读:
    湘湖的雪
    Lua 如何调用C打包的动态库
    自己制作一个USB自动挖矿器
    二十五块DIY 带屏幕可远程的温湿度传感器
    来看下,C# WebService WSDL自动生成代码,数组参数的BUG。。。ArrayOfString
    记一次非常规方法对接硬件设备(Grason Stadler GSI 61)
    京享值超8万的京东钻石用户告诉你套路是这样的
    C# 显示纯文本对齐封装(控制显示字体长度)
    [开源] C# 封装 银海医保的接口
    [开源]使用C# 对CPU卡基本操作封装
  • 原文地址:https://www.cnblogs.com/0515offer/p/4638617.html
Copyright © 2011-2022 走看看