在Xcode 6 beta 5中使用=时,'[(UIView)]’与’UInt8’不同.请改用append方法?

在Xcode 6 beta 5中使用=时,'[(UIView)]’与’UInt8’不同.请改用append方法?,第1张

概述我正在使用=来一个UIView到一个数组,似乎不再有效.这条线 dropsFound += hitView 给出错误'[(UIView)]’与’UInt8’不同 这是方法的一部分.请注意,从Xcode 6 beta 5开始,hitTest现在返回一个可选项,因此有必要说 hitView?.superview 代替 hitView.superview 在’if’语句中. func removeCom 我正在使用=来一个UIVIEw到一个数组,似乎不再有效.这条线
dropsFound += hitVIEw

给出错误'[(UIVIEw)]’与’UInt8’不同

这是方法的一部分.请注意,从Xcode 6 beta 5开始,hitTest现在返回一个可选项,因此有必要说

hitVIEw?.supervIEw

代替

hitVIEw.supervIEw

在’if’语句中.

func removeCompletedRows() -> Bool {    println(__FUNCTION__)    var dropsToRemove = [UIVIEw]()    for var y = gameVIEw.bounds.size.height - DROP_SIZE.height / 2; y > 0; y -= DROP_SIZE.height {        var rowIsComplete = true        var dropsFound = [UIVIEw]()        for var x = DROP_SIZE.wIDth / 2; x <= gameVIEw.bounds.size.wIDth - DROP_SIZE.wIDth / 2; x += DROP_SIZE.wIDth {            let hitVIEw = gameVIEw.hitTest(CGPointMake(x,y),withEvent: nil)            if hitVIEw?.supervIEw === gameVIEw {                dropsFound += hitVIEw            } else {                rowIsComplete = false                break            }        }

…省略了方法的其余部分

解决方法@H_404_22@ 这在上一版本中发生了变化.从beta 5发行说明:

The += operator on arrays only concatenates arrays,it does not append an element. This resolves ambiguity working with Any,AnyObject and related types.

因此,如果=的左侧是一个数组,那么现在必须也是.

所以:

dropsFound.append(hitVIEw)

或者,如果你真的想使用=你可能会做:

dropsFound += [hitVIEw]

但那会有点傻.使用追加,如错误消息建议.

总结

以上是内存溢出为你收集整理的在Xcode 6 beta 5中使用=时,'[(UIView)]’与’UInt8’不同.请改用append方法?全部内容,希望文章能够帮你解决在Xcode 6 beta 5中使用=时,'[(UIView)]’与’UInt8’不同.请改用append方法?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1103459.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存