0
我遇到问题。我需要的是,当我按下按钮时,这会自动刷新我的页面,将新内容放入其中。可能发生这种情况时,我希望按钮做一个圆形动画。提前致谢。使用Parse刷新数据
class ViewControllerAvvisi: UIViewController, UITableViewDelegate, UITableViewDataSource, UITextFieldDelegate
{
var selfTable: NSMutableArray = NSMutableArray()
@IBOutlet weak var MessageTable: UITableView!
@IBOutlet weak var MessageTextField: UITextField!
@IBOutlet weak var SendMessage: UIButton!
var messagesArray:[String] = [String]()
override func viewDidLoad() {
super.viewDidLoad()
self.MessageTable.delegate = self
self.MessageTable.dataSource = self
self.MessageTable.delegate = self
let tapGesture: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: "TableViewTapped")
self.MessageTable.addGestureRecognizer(tapGesture)
func retrieveMessages() {
let query = PFQuery(className: "Message")
query.findObjectsInBackgroundWithBlock {
(remoteObjects: [PFObject]?, error: NSError?) -> Void in
self.messagesArray = [String]()
for messageObject in remoteObjects! {
let messageText: String? = (messageObject as PFObject) ["Text"] as? String
if messageText != nil {
self.messagesArray.append(messageText!)
}
}
self.MessageTable.reloadData()
}
}
retrieveMessages()
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = self.MessageTable.dequeueReusableCellWithIdentifier("MessageCell")! as UITableViewCell
cell.textLabel?.text = self.messagesArray[indexPath.row]
return cell
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return messagesArray.count
}
@IBAction func SendMessage(sender: AnyObject) {
self.MessageTable.endEditing(true)
let NewMessage: PFObject = PFObject (className: "Message")
NewMessage["Text"] = self.MessageTextField.text
self.MessageTextField.enabled = false
self.SendMessage.enabled = false
NewMessage.saveInBackgroundWithBlock { (success:Bool, NSError) -> Void in
if (success == true) {
NSLog("Message successfully saved")
}else{
NSLog("Message didn't save")
}
self.MessageTextField.enabled = true
self.SendMessage.enabled = true
self.MessageTextField.text = ""
}
}
@IBAction func Refresh(sender: AnyObject) {
}
}
您应该将调用移到循环外部的'self.MessageTable.reloadData()',但除此之外,一切看起来都很好。你必须在某处调用'retrieveMessages()'。你的问题是什么。 – luk2302
问题是我需要在哪里以及如何调用该函数,以便单元格可以显示Parse的数据。 –
在不相关的说明中,您应该在命名变量时使用适当的iOS编程约定。所有实例变量都应以小写字母开头,例如var messagesArray:[String] = [String]() –