小编Bur*_*aci的帖子

将NSNumber转换为布尔值可为iPhone和iPad提供不同的结果

我正在使用选择器来更改View项目的可见性

[target performSelector:@selector(setVisible:) withObject:[NSNumber numberWithBool:YES] afterDelay:delay];
Run Code Online (Sandbox Code Playgroud)

我在视图中的功能是:

- (void)setVisible:(BOOL)isVisible_
{
    if (isVisible_)
    {
        ...
    }
    else
    {
       ...
    }
}
Run Code Online (Sandbox Code Playgroud)

这段代码适用于iPhone和iPad.在iPhone中,isVisible_始终是NO.在iPad中它的工作正确.当我更改我的函数以获取id而不是BOOL,然后将其自己投射到BOOL时,它在两个设备上都能正常工作.但是这种行为的原因是什么?

iphone casting objective-c ipad ios

0
推荐指数
1
解决办法
145
查看次数

标签 统计

casting ×1

ios ×1

ipad ×1

iphone ×1

objective-c ×1