340 字
2 分钟
【iOS】仿写 —— 计算器
在计算器的仿写中,本人首次实际使用MVC构架和Mansory自动布局。
安装Mansory
首先安装cocoapods,然后在终端找到项目文件夹,执行 pod init
随后修改文件,将内容改为:
platform
, ‘12.0’ target ‘计算器77’ do pod ‘LookinServer’, => [‘Debug’] pod ‘Masonry’ end
作者同时安装了Lookin方便调试,随后在终端执行: pod install。
如果下载有问题,请给终端挂一个梯子,因为下载源是国外的。
就此安装完成。
框架
M:我的Model负责执行运算逻辑
V:我的View负责实现一个基本的计算器页面
C:负责联系主页面和Model,同时负责各种判断各种非法运算
这是我的另一篇博客,详细介绍了MVC:
页面:

我实现的页面如图。
我使用两层for循环,外层循环负责便历5行,内层循环负责遍历每一行的四个按钮,同时使用Masonry自动布局
if (i == 4) { if (j == 0) { make.left.equalTo(rowView); make.width.equalTo(rowView).multipliedBy(0.5).offset(-btnSpacing/2); } else { make.left.equalTo(lastButton.mas_right).offset(btnSpacing); make.width.equalTo(rowView).multipliedBy(0.25).offset(-btnSpacing*0.75); } } else { if (lastButton) { make.left.equalTo(lastButton.mas_right).offset(btnSpacing); } else { make.left.equalTo(rowView); } make.top.bottom.equalTo(rowView); make.width.equalTo(@(btnHeight)); }Controller:
这部分属于重中之重,尤其在于各种非法输入的防止。
我分别设置了几个属性,来辅助进行判定
self.poin原文发布于 CSDN:【iOS】仿写 —— 计算器