我是Parse的新手,试图建立一个基本上是投票的应用程序,我可以收集所有用户按下按钮的次数的数据。我从Parse中找到了一些关于原子增量操作的信息,但我正试图将此功能实现为类似于单例的东西。
如果我想为一个用户做这个:
gameScore.incrementKey("score" byAmount:NSNumber(numberWithInt:10))
gameScore.saveInBackground()
我如何获得所有用户都可以更新相同计数器的相同实现?
我实际上能够通过使用Firebase而不是Parse来解决我的问题。我想要实时更新,而Firebase很容易地提供了这个功能。下面是我的视图控制器代码:
//
// ViewController.swift
// Firebase Test
//
// Created by Cole Smith on 7/24/15.
// Copyright (c) 2015 Cole Smith. All rights reserved.
//
import UIKit
import Firebase
class ViewController: UIViewController {
var firebaseRef = Firebase(url: "[LINK TO FIREBASE]")
var valueOfCounter: Int = 0
@IBOutlet weak var counterLabel: UILabel!
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
@IBAction func counterPressed(sender: AnyObject) {
valueOfCounter++
incrementCounterToFirebase(valueOfCounter)
}
func incrementCounterToFirebase(intForSubmission: Int) {
firebaseRef.setValue(intForSubmission)
// Read data and react to changes
firebaseRef.observeEventType(.Value, withBlock: {
snapshot in
println("(snapshot.key) -> (snapshot.value)")
self.counterLabel.text = "(snapshot.value)"
})
}
}