首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >视图控制器上有多个UISwitch

视图控制器上有多个UISwitch
EN

Stack Overflow用户
提问于 2012-11-14 00:00:17
回答 1查看 1K关注 0票数 0

我有两个UISwitch,它们都在单击事件上调用相同的方法,因此在该方法中,我需要区分这两个开关,以了解谁发送了事件。为此,我只为其中一个分配了tag

代码语言:javascript
运行
AI代码解释
复制
switch1.tag=0;

在单击其中一个UISwitch时触发的方法中,我进行了测试:

代码语言:javascript
运行
AI代码解释
复制
-(void)switchValueGetsChanged:(UISwitch*)sender{

    if (sender.tag==0) {
        NSLog(@"It's switch 1");
    }else{

        NSLog(@"It's switch 2");
    }

现在,当我运行代码时,我注意到我总是得到第一条消息:

代码语言:javascript
运行
AI代码解释
复制
    NSLog(@"It's switch 1");

即使我点击第二个UISwitch。我还为第二个UISwitch分配了一个标记,从而解决了这个问题:

代码语言:javascript
运行
AI代码解释
复制
switch1.tag=0;
switch2.tag=1;

现在,问题已经解决了,所以我的问题是:如果您有多个UISwitch,并且希望根据tag值进行判断,那么是否必须为所有UISwitch对象分配tag属性?提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-14 00:14:51

你问:

如果您获得多个UISwitch,并且希望根据tag值进行判断,那么是否必须为所有UISwitch对象分配tag属性?

如果您希望根据视图的tag属性区分任何视图,则必须设置其tag属性。如果不设置tag,还怎么检查tag

顺便说一句,不要使用0作为你的标记值之一。这是所有视图的默认值,因此将其设置为0实际上没有任何帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13370995

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档