schumyxp的专栏

编程是一门艺术

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

在界面上面放了一个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”,所以不会触发这个事件。


阅读更多
文章标签: button 文档 测试 up
个人分类: iPhone
上一篇emacs的菜单操作
下一篇redhat5的yum配置,用了163的镜像,速度快
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭