练习:计算器小程序
练习范围
- Interface Builder
- Target Action
- Selector
练习目标
我们要在iOS 装置上写一个小计算机,这个计算机需要有以下功能:
- 有显示目前输入数字与运算结果的text label
- 有可以输入数字与小数点的按钮
- 输入数字后,按下加减乘除按钮后,在输入数字,然后按下等于或其他加减乘除按钮,就会进行对应的四则运算,并输出运算结果
- 初始数字为0 时,如果按一次0,还是 0
- 初始数字为0 时,如果按一次1,会变成 1
- 在输入过程中,小数点只能够出现一次,之后再按小数点没作用
- 如果已经按了一个加减乘除按钮,再按一次另一个加减乘除按钮,后面输入的运算子会代替原本的,而不会立刻执行运算
- 如果遇到任何数字除0 的状况,要跳出alert
练习内容
- 首先使用Interface Builder 拉出所有需要的UI 元件
- 建立并连结必要的IBOutlet 与IBAction
- 输入数字完毕后,请使用NSDecimalNumber 这个class 储存数字
- 输入加减乘除运算子时,请使用NSDecimalNumber 的运算method 的selector 储存,包括:
- decimalNumberByAdding:
- decimalNumberBySubtracting:
- decimalNumberByMultiplyingBy:
- decimalNumberByDividingBy:
- 执行运算时,左右两边的数字都应该是NSDecimalNumber,然后使用之前所储存的selector,用
performSelector:withObject:
执行这个selector,像是[leftOperand performSelector:savedSelector withObject:rightOperand]