【问题标题】:Return number field from Parse into Tableview custom cell从 Parse 返回数字字段到 Tableview 自定义单元格
【发布时间】:2015-12-27 10:24:37
【问题描述】:

我有一个带有自定义原型单元的 tableview 控制器。该单元格包含 2 个标签。我正在尝试从 Parse 类返回 2 个值。一个字段称为 Notes,是一个字符串值。另一个字段称为 CreditAmount,是一个数值。我很难在我的表格视图中返回数值(信用额度)。

这是tableview控制器的代码:

导入 UIKit 导入解析 导入基金会

类 TableViewController: UITableViewController {

var note = [String]()
var credit = [NSInteger]()

var 刷新:UIRefreshControl!

override func viewDidLoad() {
    super.viewDidLoad()

      self.tableView.reloadData()

    updateNotes()

    self.refresher = UIRefreshControl()
    self.refresher.attributedTitle = NSAttributedString(string: "Pull to refresh")
    self.refresher.addTarget(self, action: "refresh:", forControlEvents: UIControlEvents.ValueChanged)
    self.tableView.addSubview(refresher)
}


func updateNotes() {

    let query = PFQuery(className: "Paydown")

    query.findObjectsInBackgroundWithBlock({ (objects:[AnyObject]?, error: NSError?) -> Void in

        self.note.removeAll(keepCapacity: true)
        self.credit.removeAll(keepCapacity: true)

        if let objects = objects as? [PFObject] {

            for object in objects {

              // var noted = object as PFObject
                self.note.append(object["Notes"] as! String)
                self.credit.append(object["CreditAmount"] as! NSInteger)

            }

            self.tableView.reloadData()


        } else {

            //println(error)
        }

        self.refresher.endRefreshing()

})

}


func refresh() {

    updateNotes()

}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

// MARK: - Table view data source

override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
    // #warning Potentially incomplete method implementation.
    // Return the number of sections.
    return 1

}

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {


return note.count

}


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


    let myCell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as! cell


    myCell.notesLabel.text = note[indexPath.row]
    myCell.amountLabel.text = credit[indexPath.row]

    return myCell

}

}

这是我的客户单元格的代码:

导入 UIKit 导入解析

类单元格:UITableViewCell {

@IBOutlet weak var notesLabel: UILabel!

@IBOutlet weak var amountLabel: UILabel!

override func awakeFromNib() {
    super.awakeFromNib()
    // Initialization code
}

override func setSelected(selected: Bool, animated: Bool) {
    super.setSelected(selected, animated: animated)

    // Configure the view for the selected state
}

}

myCell.amountLabel.text = credit[indexPath.row] 导致错误:无法将 NSInteger(又名 int)类型的值分配给 String? 类型的值。如何让数字字段工作?

【问题讨论】:

    标签: ios swift parse-platform tableview


    【解决方案1】:

    更新

    myCell.amountLabel.text = credit[indexPath.row]
    

    成为

    myCell.amountLabel.text = "\(credit[indexPath.row])"
    

    【讨论】:

    • 完美运行。谢谢拉塞尔。
    猜你喜欢
    • 1970-01-01
    • 2013-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多