2

谁能告诉我如何在更新表视图控制器中的数据时将视图控制器中名为“保存”的栏按钮项转换为“更新”。我正在使用 ios 9、xcode 7.3 和 swift 2.2。

我正在提供条形按钮的示例代码。

@IBAction func save(sender: UIBarButtonItem) {

//func Plus(sender: AnyObject) {

    if isUpdate == true{
        print("object id \(self.store?.objectID)")
        self.store?.sTitle = titlename.text
        self.store?.sNote = note.text
        //save.setTitle("my text here", forState: .Normal)
        let img = UIImage(named: "image.jpg")
        let imgData = UIImageJPEGRepresentation(img!,1)
        self.store?.sImage = imgData
        do {
            try appdelegate.managedObjectContext.save()
            self.navigationController?.popViewControllerAnimated(true)
        } catch let error as NSError  {
            print("Could not save \(error), \(error.userInfo)")
        }

    }else{
        //get the description of the entity
        let storeDescription = NSEntityDescription.entityForName("Store",inManagedObjectContext: appdelegate.managedObjectContext)

        //we create managed object to be inserted to core data
        let store = EventsandnotesStore(entity : storeDescription!,insertIntoManagedObjectContext:appdelegate.managedObjectContext)
        store.sTitle = titlename.text
        store.sNote = note.text

        let img = UIImage(named: "image.jpg")
        let imgData = UIImageJPEGRepresentation(img!,1)

       store.sImage = imgData
        do {
            try appdelegate.managedObjectContext.save()
            self.navigationController?.popViewControllerAnimated(true)
        } catch let error as NSError  {
            print("Could not save \(error), \(error.userInfo)")
        }

    }
4

2 回答 2

4

像这样在你的viewDidLoad

if (isUpdate == true) {
    let item = self.navigationItem.rightBarButtonItem
    item?.title = "Update"
}
于 2016-08-11T09:10:20.680 回答
2

你可以在viewDidLoad()方法中做到这一点:

if let item = self.navigationItem.rightBarButtonItem {
      item.title = isUpdate ? "Update" : "Save"
}
于 2016-08-11T09:22:39.430 回答