zoukankan      html  css  js  c++  java
  • OC中使用UI自己定义控件实现计算器的设计(版本号1简单的加减乘除,连加,连减,连除,连乘)

    OC中使用UI自己定义控件实现计算器的设计(版本号1简单的加减乘除,连加。连减,连除,连乘)
    
    #import <UIKit/UIKit.h>
    
    @interface ViewController : UIViewController<UIApplicationDelegate>
    
    {
        float _operator1;
        float _operator2;
        float _result;
    }
    @end
    
    #import "ViewController.h"
    
    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        UITextField * textFied1 = [[UITextField alloc]initWithFrame:CGRectMake(10, 30, 300 ,50)];
        textFied1.borderStyle = UITextBorderStyleLine;
        textFied1.backgroundColor = [UIColor redColor];
        [self.view addSubview:textFied1];
        textFied1.clearButtonMode = UITextFieldViewModeAlways;
        textFied1.tag = 007;
        
        
        
        UIButton * btn1 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn1.Frame=CGRectMake(10, 90, 70, 70);
        btn1.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn1];
        [btn1 setTitle:@"7" forState:UIControlStateNormal];
        
        [btn1 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        btn1.tag = 7;
        
      
        UIButton * btn2 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn2.Frame=CGRectMake(85, 90, 70, 70);
        btn2.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn2];
        [btn2 setTitle:@"8" forState:UIControlStateNormal];
        btn2.tag = 8;
        
        [btn2 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        
        UIButton * btn3 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn3.Frame=CGRectMake(160, 90, 70, 70);
        btn3.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn3];
        [btn3 setTitle:@"9" forState:UIControlStateNormal];
        btn3.tag = 9;
        
       [btn3 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        UIButton * btn4 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn4.Frame=CGRectMake(235, 90, 70, 70);
        btn4.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn4];
        [btn4 setTitle:@"/" forState:UIControlStateNormal];
        btn4.tag = 13;
        
       [btn4 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        UIButton * btn5 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn5.Frame=CGRectMake(10, 165, 70, 70);
        btn5.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn5];
        [btn5 setTitle:@"4" forState:UIControlStateNormal];
        btn5.tag = 4;
        
        [btn5 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        UIButton * btn6 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn6.Frame=CGRectMake(85, 165, 70, 70);
        btn6.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn6];
        [btn6 setTitle:@"5" forState:UIControlStateNormal];
        btn6.tag = 5;
        [btn6 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        
        UIButton * btn7 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn7.Frame=CGRectMake(160, 165, 70, 70);
        btn7.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn7];
         [btn7 setTitle:@"6" forState:UIControlStateNormal];
        btn7.tag = 6;
       [btn7 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        
        UIButton * btn8 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn8.Frame=CGRectMake(235, 165, 70, 70);
        btn8.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn8];
         [btn8 setTitle:@"X" forState:UIControlStateNormal];
        btn8.tag = 12;
        [btn8 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        UIButton * btn9 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn9.Frame=CGRectMake(10, 240, 70, 70);
        btn9.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn9];
        [btn9 setTitle:@"1" forState:UIControlStateNormal];
        btn9.tag = 1;
         [btn9 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        UIButton * btn10 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn10.Frame=CGRectMake(85, 240, 70, 70);
        btn10.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn10];
         [btn10 setTitle:@"2" forState:UIControlStateNormal];
        btn10.tag = 2;
        [btn10 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        
        UIButton * btn11 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn11.Frame=CGRectMake(160, 240, 70, 70);
        btn11.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn11];
         [btn11 setTitle:@"3" forState:UIControlStateNormal];
        btn11.tag = 3;
       [btn11 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        
        UIButton * btn12 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn12.Frame=CGRectMake(235, 240, 70, 70);
        btn12.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn12];
         [btn12 setTitle:@"-" forState:UIControlStateNormal];
        btn12.tag = 11;
       [btn12 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        UIButton * btn13 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn13.Frame=CGRectMake(10, 315, 70, 70);
        btn13.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn13];
         [btn13 setTitle:@"0" forState:UIControlStateNormal];
        btn13.tag = 0;
       [btn13 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        UIButton * btn14 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn14.Frame=CGRectMake(85, 315, 145, 70);
        btn14.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn14];
         [btn14 setTitle:@"=" forState:UIControlStateNormal];
        btn14.tag = 14;
       [btn14 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        UIButton * btn15 = [UIButton buttonWithType:UIButtonTypeCustom];
        btn15.Frame=CGRectMake(235, 315, 70, 70);
        btn15.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:btn15];
        [btn15 setTitle:@"+" forState:UIControlStateNormal];
        btn15.tag = 10;
        [btn15 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
        
        // Do any additional setup after loading the view, typically from a nib.
    }
    
    //enum calCul
    //{
    //    add,
    //    sub,
    //    mul,
    //    mod
    //};
    //
    //typedef enum calCul calCul;
    int count;
    
    -(void)btnClick:(UIButton *)btn
    {
        NSString * str = [[NSString alloc]init];
        if (btn.tag == 0) {
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            str = @"0";
            //_operator1 = 0;
            
            field.text = str;
        }
        else if(btn.tag==1)
        {
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            str = @"1";
            //_operator2 = 1;
            field.text = str;
        }
        else if(btn.tag==2)
        {
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            str = @"2";
            field.text = str;
        }
        else if(btn.tag==3)
        {
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            str = @"3";
            field.text = str;
        }
        else if(btn.tag==4)
        {
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            str = @"4";
            field.text = str;
        }
        else if(btn.tag==5)
        {
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            str = @"5";
            field.text = str;
        }
        else if(btn.tag==6)
        {
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            str = @"6";
            field.text = str;
        }
        else if(btn.tag==7)
        {
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            str = @"7";
            field.text = str;
        }    else if(btn.tag==8)
        {
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            str = @"8";
            field.text = str;
        }
        else if(btn.tag==9)
        {
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            str = @"9";
            field.text = str;
        }
        else if(btn.tag==10)
        {
            count = 1;
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            //str = @"+";
            str = field.text;
            //_result = _operator1;
            _operator1 = [str doubleValue];
            
            //str = [[NSString alloc]initWithFormat:@"%.2f",_result];
            field.text = str;
        }
        else if(btn.tag==11)
        {
            count = 2;
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            //str = @"-";
            //_result = _operator1 + _operator2;
            str = field.text;
            _operator1 = [str doubleValue];
            field.text = str;
        }
        else if(btn.tag==12)
        {
            count = 3;
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            //str = @"*";
            str = field.text;
            _operator1 = [str doubleValue];
            field.text = str;
        }
        else if(btn.tag==13)
        {
            count = 4;
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            //str = @"/";
            str = field.text;
            _operator1 = [str doubleValue];
            field.text = str;
        }
        else if(btn.tag==14)
        {
            UITextField * field = ( UITextField * )[self.view viewWithTag:007];
            str = @"=";
            str = field.text;
            _operator2 = [str doubleValue];
            if (count==1) {
                _result = _operator1 + _operator2;
            }
            else if(count == 2)
            {
            _result = _operator1 - _operator2;
            }
            else if(count == 3)
            {
            _result = _operator1 * _operator2;
            }
            else if(count==4)
            {
            _result = _operator1 / _operator2;
            }
            str = [[NSString alloc]initWithFormat:@"%.6f",_result];
            field.text = str;
        }
        }
    -(BOOL)textFieldShouldBeginEditing:(UITextField *)textField
    {
        return YES;
    }
    - (void)didReceiveMemoryWarning {
        [super didReceiveMemoryWarning];
        // Dispose of any resources that can be recreated.
    }
    
    @end
    


  • 相关阅读:
    EntityFramework 实践 Overview
    Retrofit 实践
    elasticsearch入门
    正则如何不匹配该内容
    windows下安装了2个python,如何下载模块到不同的python中
    python中 遇到的读取坑2.7和3.6版本的问题
    如何在idea中加载本地中已有的python
    如何在linux上有2个python的情况下安装gensim
    正则表达式,包含此内容(不管是前面还是后面)
    rdd里的foreach无法对外界产生影响
  • 原文地址:https://www.cnblogs.com/claireyuancy/p/6896187.html
Copyright © 2011-2022 走看看