class ProfileViewController: UIViewController, UINavigationControllerDelegate, UIImagePickerControllerDelegate {
@IBOutlet weak var btnMenu: UIBarButtonItem!
@IBOutlet weak var image1: UIImageView!
@IBOutlet weak var txtMessage: UILabel!
var imagePicker = UIImagePickerController()
var rootRef = FIRDatabase.database().reference()
var storage = FIRStorage.storage()
var storageRef = FIRStorage.storage().referenceForURL("gs://...") @IBAction函数actionLoad(发送者: AnyObject) {
var count : Int?
var fileName : String?
let imageRef = self.rootRef.child("users").child(LoginViewController.USER_ID!).child("images").observeEventType(FIRDataEventType.Value, withBlock: { (snapshot) in
count = snapshot.value! as! Int
var data = NSData()
data = UIImageJPEGRepresentation(self.image1.image!, 0.8)!
if count == 0 {
fileName = "1.jpg"
}else if count == 1 {
fileName = "2.jpg"
}else if count == 2 {
fileName = "3.jpg"
}else if count == 3 {
fileName = "4.jpg"
}else if count == 4 {
fileName = "5.jpg"
}
let metaData = FIRStorageMetadata()
metaData.contentType = "image/jpg"
if count < 5 {
self.storageRef.child(LoginViewController.USER_ID!).child(fileName!).putData(data, metadata: metaData){(metaData,error) in
if let error = error {
self.txtMessage.text = error.localizedDescription
}else{
self.txtMessage.text = "Your picture uploaded"
self.rootRef.child("users").child(LoginViewController.USER_ID!).child("images").setValue(count!+1)
}
}
}else{
self.txtMessage.text = "Sorry, you may to upload maximum 5 photos"
}
})
}如何停下来?它一直持续到计数== 5。但是不想要一个循环过程。点击后,它应该上传一张图片并停止!我试过:"rootRef.removeAllObservers“,但不确定如何使用
发布于 2016-08-21 18:49:51
通过点击"actionLoad“按钮,检查已经上传了多少图片的功能,如果少于5张图片,则用户选择的上传图片功能。但问题是,通过一次点击按钮,功能不会停止,并持续上传该图片一次又一次,直到5上传。
https://stackoverflow.com/questions/39056191
复制相似问题