最新消息:20210816 当前crifan.com域名已被污染,为防止失联,请关注(页面右下角的)公众号

[可能]Xcode中默认参数值异常的诡异问题:设置为false但是传入始终是true

Xcode crifan 2026浏览 0评论

Xcode中使用iPhone5模拟器去调试

通过按钮:

        switchTeamButton.addTarget(
            self,
            action:Selector("toggleTeamList:"),
            forControlEvents:UIControlEvents.TouchUpInside)

点击执行到代码:

   //toggle switch team dropdown list
    func toggleTeamList(forceHide:Bool = false) {
        print("toggleTeamList")
        print("forceHide=\(forceHide)")
        print("before toggle: self.switchTeamTableView.hidden=\(self.switchTeamTableView.hidden)")
        dispatch_async(dispatch_get_main_queue(), { () -> Void in
            if self.switchTeamTableView.allowSwitch {
                if forceHide {
                    self.switchTeamTableView.hidden = true
                } else {
                    self.switchTeamTableView.hidden = !self.switchTeamTableView.hidden
                }
                print("after  toggle: self.switchTeamTableView.hidden=\(self.switchTeamTableView.hidden)")
            }
           
            if !self.switchTeamTableView.hidden {
                print("add tapRecogTeamList")
                self.navigationController?.view.addGestureRecognizer(self.tapRecogTeamList)
                print("tapRecogTeamList.cancelsTouchesInView=\(self.tapRecogTeamList.cancelsTouchesInView)")
               
                self.view.bringSubviewToFront(self.switchTeamTableView)
            }else {
                print("remove tapRecogTeamList")
                self.navigationController?.view.removeGestureRecognizer(self.tapRecogTeamList)
            }
        })
    }

但是结果传入的forceHide值始终都是true!!!

很是诡异。

-》但是iPhone6真机执行结果却是没问题的。。。

以及再去测试了iPhone6模拟器,也是正常的,传入默认的false的:

iPhone 4s,也是出错的,传入了true

iPhone 5s,把默认为false去掉,传入正确的false:

结果iPhone5还是传入true:

感觉是:iPhone5模拟器出错了?

重置iPhone5 模拟器试试

好像还是不可以

转载请注明:在路上 » [可能]Xcode中默认参数值异常的诡异问题:设置为false但是传入始终是true

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
89 queries in 0.194 seconds, using 22.10MB memory