2016-09-05 10 views
0

すぐにできるアプリには、UITableViewControllerと通常のUIViewControllerがあります。 "AddToDoVC"というUIViewControllerには、ToDoの名前とタイトルラベル(viewTitle)のテキストボックス "Add ToDo"があります。これで、追加ボタンが押され、toDoを保存し、その名前を "ToDos" UITableViewControllerに表示します。今、私は "editAction"と呼ばれるUITableViewRowActionを挿入しました。この編集ボタンがtableView上で押されると、それは "AddToDoVC"に行き、そのviewControllerを少し変更して編集モードにしたい、例えば、タイトル "Add ToDo"が "Edit ToDo "、またはtextFieldという名前が自動的に保存されたToDoの名前になります(私は、Realm Swiftを使用して保存します)。さて、私はどうすればそれをすることができますか?ここまでは私がこれまでに書いたことはありますが、常に「致命的なエラー:予期せぬことに、オプション値をアンラッピングしている間にnilが見つかりました」というエラーが表示されます。 "のToDo" のUITableViewControllerでUITableViewRowActionが押されたときに表示される編集モードviewControllerを作成するにはどうすればいいですか?

:この編集モードを達成することができた方法

func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [UITableViewRowAction]? { 

    //Edit 
    let editAction = UITableViewRowAction(style: UITableViewRowActionStyle.Normal, title: "Edit") {(editAction, indexPath) -> Void in 

     //Shows AddTaskVC when "Edit" is pressed 
     let editTaskVC = self.storyboard?.instantiateViewControllerWithIdentifier("addTaskVC") as! AddTaskVC 
     self.navigationController?.pushViewController(editTaskVC, animated: true) 

     //Changing the viewTitle's text from "Add Task" to "Edit Task" as it is now in an "Edit" mode -> this doesn't do anything other than give me the error "fatal error: unexpectedly found nil while unwrapping an Optional value" 
     editTaskVC.viewTitle.text = "Edit Task" 

    } 

    //Return edit action 
    return [editAction] 

} 

?前もって感謝します。

+0

問題が解決しましたか? –

答えて

0

ラベルに値を直接設定する代わりに。 AddToDoVCに文字列strを定義し、その文字列値をviewDidLoad()Labelに割り当てます。

現在、ラベルはビューコントローラで描画されておらず、値を割り当てているため、ラベルの値は設定されません。

関連する問題