我有两个UISwitch
,它们都在单击事件上调用相同的方法,因此在该方法中,我需要区分这两个开关,以了解谁发送了事件。为此,我只为其中一个分配了tag
:
switch1.tag=0;
在单击其中一个UISwitch
时触发的方法中,我进行了测试:
-(void)switchValueGetsChanged:(UISwitch*)sender{
if (sender.tag==0) {
NSLog(@"It's switch 1");
}else{
NSLog(@"It's switch 2");
}
现在,当我运行代码时,我注意到我总是得到第一条消息:
NSLog(@"It's switch 1");
即使我点击第二个UISwitch
。我还为第二个UISwitch
分配了一个标记,从而解决了这个问题:
switch1.tag=0;
switch2.tag=1;
现在,问题已经解决了,所以我的问题是:如果您有多个UISwitch
,并且希望根据tag
值进行判断,那么是否必须为所有UISwitch
对象分配tag
属性?提前谢谢。
发布于 2012-11-14 00:14:51
你问:
如果您获得多个
UISwitch
,并且希望根据tag
值进行判断,那么是否必须为所有UISwitch
对象分配tag
属性?
如果您希望根据视图的tag
属性区分任何视图,则必须设置其tag
属性。如果不设置tag
,还怎么检查tag
顺便说一句,不要使用0
作为你的标记值之一。这是所有视图的默认值,因此将其设置为0
实际上没有任何帮助。
https://stackoverflow.com/questions/13370995
复制相似问题