Creat First iOS App
At this article you can learn how to create your own iOS calculator app, Motion Calculator. I share the source code on my Github account.
Firs step create file ViewController.swift on your project:
// بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ // // ViewController.swift // Motion Calculator // // Created by Afriwan Ahda on 12/31/17. // Copyright © 2017 Motion Studio. All rights reserved. // import UIKit enum Operation:String { case Add = "+" case Subtract = "-" case Divide = "/" case Multiply = "*" case NULL = "Null" } class ViewController: UIViewController { @IBOutlet weak var outputLbl: UILabel! var runningNumber = "" var leftValue = "" var rightValue = "" var result = "" var currentOperation:Operation = .NULL override func viewDidLoad() { super.viewDidLoad() outputLbl.text = "0" } @IBAction func numberPressed(_ sender: RoundButton) { if runningNumber.count <= 9 { runningNumber += "\(sender.tag)" outputLbl.text = runningNumber } } @IBAction func dotPressed(_ sender: RoundButton) { if runningNumber.count <= 8 { runningNumber += "." outputLbl.text = runningNumber } } @IBAction func equalsPressed(_ sender: RoundButton) { operation(operation: currentOperation) } @IBAction func addPressed(_ sender: RoundButton) { operation(operation: .Add) } @IBAction func substractPressed(_ sender: RoundButton) { operation(operation: .Subtract) } @IBAction func multiplyPressed(_ sender: RoundButton) { operation(operation: .Multiply) } @IBAction func dividePressed(_ sender: RoundButton) { operation(operation: .Divide) } @IBAction func allClearPerssed(_ sender: RoundButton) { runningNumber = "" leftValue = "" rightValue = "" result = "" currentOperation = .NULL outputLbl.text = "0 " } func operation(operation: Operation) { if currentOperation != .NULL { if runningNumber != "" { rightValue = runningNumber runningNumber = "" if currentOperation == .Add { result = "\(Double(leftValue)! + Double(rightValue)!)" } else if currentOperation == .Subtract { result = "\(Double(leftValue)! - Double(rightValue)!)" } else if currentOperation == .Multiply { result = "\(Double(leftValue)! * Double(rightValue)!)" } else if currentOperation == .Divide { result = "\(Double(leftValue)! / Double(rightValue)!)" } leftValue = result if (Double(result)!.truncatingRemainder(dividingBy: 1) == 0) { result = "\(Int(Double(result)!))" } outputLbl.text = result } currentOperation = operation } else { leftValue = runningNumber runningNumber = "" currentOperation = operation } } }
Second step, create file RoundButton.swift for circle view of the button:
// بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ // // RoundButton.swift // Motion Calculator // // Created by Afriwan Ahda on 12/31/17. // Copyright © 2017 Motion Studio. All rights reserved. // import UIKit @IBDesignable class RoundButton: UIButton { @IBInspectable var roundButton:Bool = false { didSet { if roundButton { layer.cornerRadius = frame.height / 2 } } } override func prepareForInterfaceBuilder() { if roundButton { layer.cornerRadius = frame.height / 2 } } }
for the storyboard and others file download full source code, you can modify and learn much how to make iOS app from the source code. Happy code!
Posted on: November 20, 2018, by : Afriwan Ahda