一行代码一场梦,大家好我是阿达,又到了技术分享的时间,还有技术分大放送,这么好的事怎么还不来看一下呢? 新加入的小伙伴,在看了视频之后心里一定都有个疑问,就是『我学这个跟做APP有毛线关系啊?』阿达今天就跟小伙伴们分享一个简单的元件应用,在这里小伙伴们会发现原来做APP这么简单!
今天小伙伴们将会学习到关于资料型态的转换,使用UISlider,使用UISwitch 因为在这里阿达假设小伙伴们都已经看完了基础视频,所以基础的操作阿达在这里就跳过不说明,首先不用多说,我们开始建立新的项目命名为『Calculate 』 在這裡阿達使用的語言是OC所以記得將語言設定為OC
再来就是到 storyboard 里面将我们所需要的元件拖到上面来布局。
在这里阿达用红色的字体将元件的名字标记出来,让小伙伴们可以在元件库里面很容易找到
再来就是连连看的时间啦,为了节省篇幅,阿达就不一步一步的带小伙伴连,直接展示出最后的结果,小伙伴们也可以将他复制贴上之后直接连线 一样的效果喔! @property (weak, nonatomic) IBOutlet UITextField *money;
@property (weak, nonatomic) IBOutlet UISwitch *shopswitch;
@property (weak, nonatomic) IBOutlet UISlider *shopslider; @property (weak, nonatomic) IBOutlet UILabel *shopmoney;
@property (weak, nonatomic) IBOutlet UILabel *totalmoney;
在这里我们还要针对元件做一些微调,照着图片来操作就对了XD
我们来分析一下,在所有的元件里面,需要接受我们操作的元件只有三个,也就是 text, slider , switch 所以我们要针对他们建立函数 - (IBAction)calMoney:(id)sender;
- (IBAction)switchMoney:(id)sender;
- (IBAction)sliderMoney:(id)sender;
完成之后看起来就是这个样子的,小伙伴们别忘了以上的操作都是在 ViewController.h 里面操作的喔。
接下来我们进入到 ViewController.m 里面来实际操作这些函数,让它动起来,当然小伙伴们也可以先迫不及待地按下 command + R 来看看在手机上显示的情况,你们也可以按下里面的案件,不过 什么事情都不会发生XD
首先我们看到 - (IBAction)calMoney:(id)sender
在里面加上以下代码: //提⽰示 NSLog(@"calMoney"); //取得money物件的字串 NSString *pay = [_money text]; //將pay⽂文字物件轉成整數 int payMoney = [pay intValue]; //將數值轉成⽂文字 NSString *payStr = [NSString stringWithFormat:@"%d", payMoney ]; //計算後將結果輸出,並以⽂文字⽅方式呈現 [_totalmoney setText: payStr ];
这里我们可以清楚地看到,我们建立了一个变数来接收我们所输入的数字,之后再将我们所输入的『文字』 转换成『数字』最后再将他输出。 接下來我們到 - (IBAction)switchMoney:(id)sender
NSString *pay = [_money text]; int payMoney = [pay intValue];
//利用Switch確認是否需要包含手續費 if ([_shopswitch isOn]) { [_totalmoney setText: [NSString stringWithFormat:@"%d", payMoney + (int)[_shopslider value] ] ]; }else{ [_totalmoney setText:[NSString stringWithFormat:@"%d", payMoney ] ]; }
这边其实就是利用 switch元件来做判断 如果是on 的话 就把它加上运费,如果不是的话那就是原来的输入。
最后我们来到- (IBAction)sliderMoney:(id)sender
NSString *pay = [_money text]; int payMoney = [pay intValue];
//取得手續費並顯示在畫面上 [_shopmoney setText:[NSString stringWithFormat:@"%d", (int)[_shopslider value]]]; if ([_shopswitch isOn]) { [_totalmoney setText: [NSString stringWithFormat:@"%d", payMoney + (int)[_shopslider value] ] ]; }else{ [_totalmoney setText:[NSString stringWithFormat:@"%d", payMoney] ]; }
在这边我们要做的事情其实就是把slider 上面滑动的数字显示出来,然后根据刚刚的switch 来判断是否加上去。
说了那么多 我们来按下 command + R 来试试看吧
是不是感觉好棒棒的啊!?恭喜小伙伴成功地做出了一个简单的App别怀疑!这样就可以上架了! 这样的功能改一改一个简单的计算器就这样诞生了。
好了!接下来就是阿达撒技术分的时间了,我们发现这个App毕竟还是不完美,首先,我们的键盘收不下去?!有没有小伙伴知道这个问题怎么解决的呢?
如果觉得这个问题实在太简单,不屑回答的小伙伴可以挑战看看进阶版题目
同样只有这些元件 只是运算的方式稍微修改,小伙伴们知道该怎么做吗?
同样只有这些元件 只是运算的方式稍微修改,小伙伴们知道该怎么做吗?
现在阿达来公布一下评分标准
能够成功的将键盘收下去的小伙伴技术分+1 能够做出进阶版的小伙伴技术分 +2 能够使用swift 写出 任何一个版本的小伙伴 技术分 +3
请再回覆当中附上你们的程式压缩包,回帖仅阿达可见。阿达在活动结束之后将会一个一个的来看,如果发现有写得好的小伙伴,经过当事人同意之后还会跟大家分享喔!
活动时间四十八小时,到八月二号的下午五点,请小伙伴们踊跃参与! 让我们用一行一行的代码,一步一步地实现我们的梦想,我是阿达,我们下回见!
|