Swift 3 var 弃用错误

标签 swift xcode7

<分区>

有两个问题,第一个是黄色消息(警告):

var parameters are deprecated and will be removed in Swift3"<BR> If I fix it, the next line "searchText = ...." 

第二个带有红色消息(错误)

cannot assign to value: searchText is a let constant

代码如下:

func filterContentForSearchText(var searchText: String, scope: NSInteger) {       
        searchText = searchText.lowercaseString;
}

最佳答案

在 swift 3.0 中,函数的可变参数将被删除。这是因为该语言的设计者认为它可能与 inout 变量不明确。您可以使用阴影来轻松解决此问题,如下所示:

func filterContentForSearchText(searchText: String, scope: NSInteger) {
    var searchText = searchText       
    searchText = searchText.lowercaseString;

这里我们分配一个局部变量 searchText 作为常量 searchText 参数的值。由于隐藏,局部变量是使用 searchText 时引用的内容。

关于Swift 3 var 弃用错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36414183/

相关文章:

ios - 无法将我的 Swift 类访问到 Objective-C 应用程序中

ios - SWIFT:快速点击 UIButton 会导致选票计数不正确

ios - 无法调试 - 变量值未显示

ios - 将 UIImage 调整为 100% 并裁剪

xcode7 - tvOS XC UI 测试滑动远程手势

iOS SWIFT - 文件存档 - 参数类型 "[String?]": does not conform to expected type'AnyObject'

ios - 浅拷贝与深拷贝问题 iOS Swift

ios - 在 AVPlayerLayer 和 AVPlayerViewController 中同步视频

ios - 用户注销后 Firebase Facebook 登录按钮不会更改

swift - 从 .xib 文件加载自定义 UIView 时线程 1 EXC_BAD_ACCESS