Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 如何发送';发送方';目标C中的另一种方法_Objective C_Cocoa_Button_Sender - Fatal编程技术网

Objective c 如何发送';发送方';目标C中的另一种方法

Objective c 如何发送';发送方';目标C中的另一种方法,objective-c,cocoa,button,sender,Objective C,Cocoa,Button,Sender,我想做一个简单的圆圈和交叉游戏 我放置了9个按钮,但将其连接到一个方法,因此当用户单击其中任何一个按钮时,按钮的标题将更改为X或O。所有按钮都有不同的标记。现在我想将“sender”发送到另一个方法,只是为了检查用户是圆形还是十字形 -(void) show: (enum gamer) aGamer andSender: (id) sender { switch(aGamer) { case gCircle: [sender set

我想做一个简单的圆圈和交叉游戏

我放置了9个按钮,但将其连接到一个方法,因此当用户单击其中任何一个按钮时,按钮的标题将更改为X或O。所有按钮都有不同的标记。现在我想将“sender”发送到另一个方法,只是为了检查用户是圆形还是十字形

    -(void) show: (enum gamer) aGamer andSender: (id) sender
{
    switch(aGamer)
    {
        case gCircle:
            [sender setTitle:[NSString stringWithFormat:@"%c",'o']];
            break;
        case gCross:
            [sender setTitle:[NSString stringWithFormat:@"%c",'x']];

            break;
    }
}
问题是按钮不会更改标题。下面是我单击按钮时调用方法show的方式


[自我展示:aGamer和发送者:发送者]

您应该改用
setTitle:forState:
。 例如


以下是指向“UIdoc”按钮的链接:

为什么要将
'o'
格式化为
NSString
?您只需使用
@“o”
即可。请编辑您的问题,以包含调用
show:andSender:
的方法的完整代码。这仅在Cocoa Touch中提供。据报道,他们是为OSX开发的,所以他们使用Cocoa。
[sender setTitle:@"o" forState:UIControlStateNormal]