網(wǎng)站首頁(yè) 編程語(yǔ)言 正文
本文實(shí)例為大家分享了Swift實(shí)現(xiàn)簡(jiǎn)單計(jì)算器項(xiàng)目的具體代碼,供大家參考,具體內(nèi)容如下
// // ?ViewController.swift // ?計(jì)算器 // // ?Created by 悅兌科技 on 15/1/14. // ?Copyright (c) 2015年 BSY. All rights reserved. // import UIKit class ViewController: UIViewController { ? ? var numOne = UITextField() ? ? var numTwo = UITextField() ? ? var cleanButton = UIButton() ? ? var sum = UILabel() ? ? override func viewDidLoad() { ? ? ? ? super.viewDidLoad() ? ? ?? ? ? ? ? self.view.backgroundColor = UIColor.brownColor()? ? ? ? ? [self .addAllSubViews()] ? ? } ? ? func addAllSubViews() ? ? { ? ? ? ? // 計(jì)算 ? ? ? ? var button:UIButton = UIButton.buttonWithType(UIButtonType.Custom) as UIButton ? ? ? ? var frame = CGRectMake(100, 300, 100, 30) ? ? ? ? button.frame = frame ? ? ? ? self.view.addSubview(button) ? ? ? ? button.backgroundColor = UIColor.lightGrayColor() ? ? ? ? button.setTitle("計(jì)算", forState: UIControlState.Normal) ? ? ? ? button.setTitleColor(UIColor.blackColor(), forState: UIControlState.Normal) ? ? ? ? button.addTarget(self, action: "OnClick", forControlEvents: UIControlEvents.TouchUpInside) ? ? ? ? // 第一個(gè)數(shù) ? ? ? ? var numOne = UITextField(frame: CGRectMake(10, 200, 80, 30)) ? ? ? ? numOne.placeholder = "輸一個(gè)數(shù)" ? ? ? ? numOne.layer.borderColor = UIColor.lightGrayColor().CGColor ? ? ? ? numOne.layer.borderWidth = 2 ? ? ? ? numOne.layer.cornerRadius = 5 ? ? ? ? self.view.addSubview(numOne) ? ? ? ? numOne.keyboardType = UIKeyboardType.NumberPad ? ? ? ? self.numOne = numOne ? ? ? ? ? var add = UILabel(frame: CGRectMake(100, 200, 20, 30)) ? ? ? ? add.text = "+" ? ? ? ? add.font.fontWithSize(20) ? ? ? ? self.view.addSubview(add) ?? ? ? ? ? // 第二個(gè)數(shù) ? ? ? ? var numTwo = UITextField(frame: CGRectMake(120, 200, 80, 30)) ? ? ? ? numTwo.placeholder = "輸一個(gè)數(shù)" ? ? ? ? numTwo.layer.borderColor = UIColor.lightGrayColor().CGColor ? ? ? ? numTwo.layer.borderWidth = 2 ? ? ? ? numTwo.layer.cornerRadius = 5 ? ? ? ? self.view.addSubview(numTwo) ? ? ? ? numTwo.keyboardType = UIKeyboardType.NumberPad ? ? ? ? self.numTwo = numTwo ? ? ? ? var equalTo = UILabel(frame: CGRectMake(210, 200, 20, 30)) ? ? ? ? equalTo.text = "=" ? ? ? ? equalTo.font.fontWithSize(20) ? ? ? ? self.view.addSubview(equalTo) ? ? ? ?? ? ? ? ? // sum ?和 ? ? ? ? var sum = UILabel(frame: CGRectMake(230, 200, 80, 30)) ? ? ? ? sum.textAlignment = NSTextAlignment.Center ? ? ? ? sum.font.fontWithSize(20) ? ? ? ? sum.text = "0" ? ? ? ? self.view.addSubview(sum) ? ? ? ? sum.layer.borderWidth = 2 ? ? ? ? sum.layer.borderColor = UIColor.lightGrayColor().CGColor ? ? ? ? self.sum ?= sum ? ? } ? ? /** ? ? 計(jì)算按鈕 ? ? */ func OnClick() { ? ? var sum = ?NSString(string: self.numOne.text).intValue + NSString(string: self.numTwo.text).intValue ? ? self.sum.text = NSString(string: String(sum)) ? ? [self .addCleanButton()] } ? ? /** ? ? 點(diǎn)擊界面事件 ? ? */ ? ? override func touchesBegan(touches: NSSet, withEvent event: UIEvent) { ? ? ? ? self.numOne.resignFirstResponder() ? ? ? ? self.numTwo.resignFirstResponder() ? ? } ? ? /** ? ? 清除按鈕 ? ? */ ? ? func addCleanButton(){ ? ? ? ? var cleanButton:UIButton = UIButton.buttonWithType(UIButtonType.Custom) as UIButton ? ? ? ? var frame = CGRectMake(220, 240, 50, 30) ? ? ? ? cleanButton.frame = frame ? ? ? ? cleanButton.setTitle("清除", forState: UIControlState.Normal) ? ? ? ? cleanButton.setTitleColor(UIColor.redColor(), forState: UIControlState.Normal) ? ? ? ? self.view.addSubview(cleanButton) ? ? ? ? ? ? ? ? cleanButton.addTarget(self, action: "cleanButtonClick", forControlEvents: UIControlEvents.TouchUpInside) ? ? ? ? self.cleanButton = cleanButton ? ? } ? ? /** ? ? 清除按鈕方法實(shí)現(xiàn) ? ? */ ? ? func cleanButtonClick(){ ? ? self.sum.text = "0" ? ? self.numOne.text = "" ? ? self.numTwo.text = "" ? ? ? ? if(self.sum.text=="0"){ ? ? ? ? self.cleanButton.hidden = true ? ?? ? ? ? ? } } }
原文鏈接:https://blog.csdn.net/mjbaishiyun/article/details/42736675
相關(guān)推薦
- 2022-05-21 kubernetes?k8s入門(mén)定義一個(gè)Pod_云其它
- 2022-07-21 Linux上源碼包安裝nginx及yum 安裝nginx
- 2022-09-25 mybatis增刪改查實(shí)現(xiàn)以及模糊查詢
- 2022-12-11 C語(yǔ)言計(jì)算分段函數(shù)問(wèn)題_C 語(yǔ)言
- 2023-06-19 C語(yǔ)言如何實(shí)現(xiàn)BOOL類型_C 語(yǔ)言
- 2022-03-07 golan參數(shù)校驗(yàn)Validator_Golang
- 2022-07-22 mybatis源碼之集成springboot原理
- 2022-12-28 PyQt5學(xué)習(xí)之QThread類的使用詳解_python
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過(guò)濾器
- Spring Security概述快速入門(mén)
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡(jiǎn)單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對(duì)象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支