iOS(OC)学习第2天-绑定UI和点击事件

之前我们学会了设置UI,但是UI组件没有绑定点击事件,不能交互

第一步-设置静态操作页面

页面上共6个UI组件:三个UILabel ,两个 UITextField ,一个UIButton

第二步-定义变量和方法

objectivec 复制代码
//ViewController.h
#import <UIKit/UIKit.h>

@interface ViewController : UIViewController

//IBAction
//保证方法可以进行连线
//相当于void
-(IBAction)sum;

//IBOutlet
//保证属性可以进行连线
@property(nonatomic,weak) IBOutlet UITextField *text1;
@property(nonatomic,weak) IBOutlet UITextField *text2;
@property(nonatomic,weak) IBOutlet UILabel *result;

@end
  1. 返回类型是IBAction的方法有一个圆圈,反之没有
  2. 定义参数是IBOutlet的变量有一个圆圈,反之没有

第三步-建立链接

鼠标靠近圆圈时,有一个+号展示,然后点击拖动到指定UI组件,这样方法或者变量就跟对应的组件建立的链接

建立链接


建立链接后,变成了实心圆圈

点击实心圆,可以看到关联的组件

删除链接

第四步-实现点击逻辑

objectivec 复制代码
//ViewController.m

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
}
- (void)sum1{
    
}

- (void)sum {
    NSLog(@"ViewController sum");
    NSLog(@"ViewController _text1 = %@",self.text1);
    NSLog(@"ViewController _text2 = %@",self.text2);
    NSLog(@"ViewController _result = %@",self.result);
    //获取数字
    NSString *addStr1 = self.text1.text;
    NSString *addStr2 = self.text2.text;
    
    //转换成int
    int num1 = [addStr1 intValue];
    int num2 = [addStr2 intValue];
    
    NSLog(@"ViewController addStr1 = %@  num1=%d",addStr1,num1);
    NSLog(@"ViewController addStr2 = %@  num2=%d",addStr2,num2);
    
    //相加
    int sum = num1+num2;
    
    //设置结果
    self.result.text = [NSString stringWithFormat:@"%d", sum];
}


@end

结果

相关推荐
一隅论数智3 小时前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
XiHongShi20164 小时前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
大蓝头4 小时前
安装包UI美化之路-nsNiuniuSkin全新UI调试与预览方法
ui·electron·安装包·截图控件·截屏控件
爱吃苹果的日记本4 小时前
离散数学第六课
学习·离散数学
AI职业加油站6 小时前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
旖旎夜光6 小时前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控
奇思妙想聪明勤奋的小羊6 小时前
DeepAgents第5章:子Agent 与上下文隔离—让 Agent学会委派
人工智能·python·学习·语言模型
霍霍的袁6 小时前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio
彧azz7 小时前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试