繁体   English   中英

自定义对象数组-Swift

[英]Array of custom objects - Swift

我有这段代码,尝试创建用户数组时遇到问题。

如果我使用“ var userArray:[Users] = FakeData ”, 则会出现以下错误“无法将类型'User_TableViewController->()-> [Users]'的值转换为指定的类型'[Users]'”

如果我使用“ var userArray:[Users] = FakeData() ”, 则会出现以下错误“调用中的参数#1缺少参数”

如果我使用“ var userArray:[用户] = [FakeDate] ”, 则会出现以下错误“使用未解析的标识符'FakeDate'”

问题是什么? 我用光了xD

class User_TableViewController: UITableViewController {

    var userArray:[Users] = FakeData()

    override func viewDidLoad() {
        super.viewDidLoad()
    }

    override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
        return 1
    }

    override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return userArray.count
    }


    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

        let Cell = tableView.dequeueReusableCellWithIdentifier("userCell") as! UserCell_TableViewCell
        Cell.userImage.image = userArray[indexPath.row].getImage()
        Cell.userDescription?.text = userArray[indexPath.row].getFirstName()

        return Cell
    }

    func FakeData() -> [Users]{

        let Person1 = Users(firstName: "Usuario 1", lastName: "Apellido 1", email: "mail1@hotmail.com", password: "1234567", age: "18", gender: "Male", image: UIImage(named: "Apple48x48")!)
        let Person2 = Users(firstName: "Usuario 2", lastName: "Apellido 2", email: "mail2@hotmail.com", password: "1234567", age: "18", gender: "Male", image: UIImage(named: "Apple48x48")!)
        let Person3 = Users(firstName: "Usuario 3", lastName: "Apellido 3", email: "mail3@hotmail.com", password: "1234567", age: "18", gender: "Male", image: UIImage(named: "Apple48x48")!)

        return [Person1, Person2, Person3]

    }

}

您应该在方法内部初始化数组,例如viewDidLoadinit 对于属性声明,要么设置

var userArray:[Users]!

要么

var userArray:[Users] = []

然后在内部(例如) viewDidLoad

userArray = FakeData()

(惯例也是以小写字母开头的方法,因此, fakeData()是在您尝试之一中编写FakeDate而不是FakeData的方法,并且变量名也应该以小写字母开头,即单元格而不是Cell)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM