计算
控件介绍
文本输入
- 设置键盘格式为NumberPad
- 字符串与数字转换方法 NSInteger num2 =[str2 integerValue];
弹窗控件
- UIAlertController 新版本弹窗
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"error" message:@"输入有误" preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *action =[UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
NSLog(@"取消");
}];
[alert addAction:action];
[self presentViewController:alert animated:YES completion:nil];
- UIAlertView IOS9之前版本
UIAlertView errView = [[UIAlertView alloc] initWithTitle:@"error" message:message delegate:nil cancelButtonTitle:@"ok" otherButtonTitles:nil, nil];
[errView show]
实现逻辑
NSLog(@" 点击按钮");
//达到数字
NSString *str1= self.Num1Text.text;
NSString *str2 = self.Num2Text.text;
//转为数字
NSInteger num1 =[str1 integerValue];
NSInteger num2 =[str2 integerValue];
//校验
if (num1 ==0 || num2 ==0){
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"error" message:@"输入有误" preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *action =[UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
NSLog(@"取消");
}];
[alert addAction:action];
[self presentViewController:alert animated:YES completion:nil];
return ;
}
//相加
NSInteger result =num1+num2;
//展示结果
self.ResultLabel.text =[NSString stringWithFormat:@"%zd",result];
切换 主题
使用控件
- UISwitch 开关组件
- UISegmentedControl多选框
基本用法
-addTarget绑定点击或者切换事件文章来源:https://www.toymoban.com/news/detail-724382.html
[sc addTarget:self action:@selector(changeThemeBystring:) forControlEvents:UIControlEventValueChanged];
代码实现
-(void) loadTopView{
//添加文本
UILabel *lb=[[UILabel alloc] init];
[lb setText:@"更换主题"];
[lb setFrame:CGRectMake(5, 0, 400, 40)];
[self.topView addSubview:lb];
//开关
UISwitch *sw =[[UISwitch alloc] init];
[sw setFrame:CGRectMake(200, 0, 200, 40)];
[sw addTarget:self action:@selector(changeTheme:) forControlEvents:UIControlEventTouchUpInside];
[self.topView addSubview:sw];
//多选框
UISegmentedControl *sc =[[UISegmentedControl alloc] initWithItems:@[@"yellow",@"red",@"green"]] ;
[sc setFrame:CGRectMake(5, 55, 300, 40)];
[sc addTarget:self action:@selector(changeThemeBystring:) forControlEvents:UIControlEventValueChanged];
[self.topView addSubview: sc];
//控件位置
[self.topView setCenter:CGPointMake(self.view.frame.size.width/2, self.view.frame.size.height/2) ];
}
#pragma mark 更换主题
- (void)changeTheme:(UISwitch *)sw{
if(sw.isOn){
self.view.backgroundColor= [UIColor whiteColor];
}else{
self.view.backgroundColor =[UIColor darkGrayColor];
}
}
- (void)changeThemeBystring:(UISegmentedControl *)sg{
NSLog(@"%@",sg);
switch (sg.selectedSegmentIndex){
case 0:
[self changeThemeBycolor:[UIColor yellowColor]];
break;
case 1:
[self changeThemeBycolor:[UIColor redColor]];
break;
case 2:
[self changeThemeBycolor:[UIColor greenColor]];
break;
}
}
##效果展示
文章来源地址https://www.toymoban.com/news/detail-724382.html
到了这里,关于IOS课程笔记[4-5] 计算器实现与更换主题 的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!