关闭

Change了UISwitch的value,value changed事件却没有被触发。

标签: button文档测试up
1649人阅读 评论(0) 收藏 举报
分类:

在界面上面放了一个UISwitch和一个UIButton,点击button的时候,改变UISwitch的值,代码如下:

//绑定到UISwich的value changed事件

- (IBAction)valueChanged:(id)sender

{

NSLog(@"value changed");

}

 

//绑定到UIButton的touch up inside事件

- (IBAction)changeValue:(id)sender

{

[self.mySwitch setOn:!self.mySwitch.on animated:YES];

}

 

测试了一下,发现直接操作UISwich的话,会有log出来。但是如果点击button的话,是没有log的。感觉很奇怪,就查了下文档,发现了下面的话:

UIControlEventValueChanged

A touch dragging or otherwise manipulating a control, causing it to emit a series of different values.

 

看这个意思,就是说,如果我调用代码来改变UISwitch的值,因为没有“touch”,所以不会触发这个事件。


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:134529次
    • 积分:2310
    • 等级:
    • 排名:第16246名
    • 原创:91篇
    • 转载:11篇
    • 译文:0篇
    • 评论:51条
    最新评论