嗨我遇到了swift 3的问题。有一些代码会给我一个错误。我将它从swift 2.2转换为swift 3,这就是结果
几行代码是swift 2代码,它工作正常
第二位代码是转换后的代码,它给我一个错误
如果我使用" ="而不是" =="它给了我这个错误
if show = "followers" {
loadFollowers()
}
if show = "followings" {
loadFollowings()
}
无法分配属性:self是不可变的
导致错误的if语句
var user = String()
var show = String()
class followersViewController: UITableViewController {
var usernameArray = [String]()
var picArray = [PFFile]()
var followArray = [String]()
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.hidesBackButton = true
let backBtn = UIBarButtonItem(image: UIImage(named: "back.png"), style: .plain, target: self, action: #selector(followersVC.back(_:)))
self.navigationItem.leftBarButtonItem = backBtn
let backSwipe = UISwipeGestureRecognizer(target: self, action: #selector(followersVC.back(_:)))
backSwipe.direction = UISwipeGestureRecognizerDirection.right
self.view.addGestureRecognizer(backSwipe)
if show == "followers" {
loadFollowers()
}
if show == "followings" {
loadFollowings()
}
}
二元运算符' =='不能应用于类型的操作数'(UIViewController,sender:AnyObject?) - >虚空'和'字符串'
答案 0 :(得分:0)
在Swift 3中,UIViewController
有一个名为show
的方法,它会遮挡您的show
变量并阻止您的视图控制器使用它。
您可以通过将show
变量的名称更改为其他内容并使用==
比较来解决此问题。
答案 1 :(得分:0)
我添加了String(),并且对我有用
public class CoffeQuantity {
int id;
Integer quantity;
//getters and setters...
}