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

2

メソッドでこれを行うことができますviewDidLoad()

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