2016-04-09 12 views
0

質問が少し混乱しているように見えるので、簡単にします。Swift - 内部にコンテナビューが埋め込まれているビューコントローラからナビゲーション項目(編集)にアクセスするにはどうすればいいですか?

2つのコンテナビュー(MealPlanViewController、ExerciseViewController - このコンテナは無視できます)を保持するビューコントローラ(JournalViewController)を作成しました。 MealPlanViewControllerにはUITableViewがあり、左のナビゲーションのEditボタン項目を使用してUITableviewの行を削除/移動できるようにします。しかし、JournalViewControllerでナビゲーションアイテムを作成すると、コンテナビューのUITableViewで編集可能にする方法がわかりません。ここで

は一例です。ここで

enter image description here

は私JournalViewControllerクラスである:mealPlanViewControllerクラスで

import UIKit 

class JournalViewController: UIViewController { 

@IBOutlet var exerciseContainerView: UIView! 
@IBOutlet var mealContainerView: UIView! 

@IBOutlet var mealOrExerciseControl: UISegmentedControl! 

var mealScheduleTableView: UITableView? 

override func viewDidLoad() { 
    super.viewDidLoad() 

    self.navigationItem.leftBarButtonItem = self.editButtonItem() 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 

@IBAction func showComponent(sender: UISegmentedControl) 
{ 
    if sender.selectedSegmentIndex == 0 
    { 
     UIView.animateWithDuration(0.5, animations: 
     { 
       self.exerciseContainerView.alpha = 0 
       self.mealContainerView.alpha = 1 
       self.navigationItem.leftBarButtonItem = self.editButtonItem() 
     }) 
    } 

    else 
    { 
     UIView.animateWithDuration(0.5, animations: 
     { 
       self.exerciseContainerView.alpha = 1 
       self.mealContainerView.alpha = 0 
       self.navigationItem.leftBarButtonItem = nil 
     }) 
    } 
} 



} 

答えて

0

ユーザーが編集ボタンを押したときのためにIBActionを設定します。 IBAction内では、Tableviewに影響を与えたい任意の関数を呼び出すことができます。

この後、TableDelegate関数が行の削除と移動を引き継ぎます。

+0

私はそれについて考えましたが、もしそれを行うと、func tableView(tableView:UITableView、canEditRowAtIndexPath indexPath:NSIndexPath) - > Bool'メソッドとはどのように呼びますか?このメソッドは、テーブルビューのセルを削除および/または移動するためのオプションをアクティブにするために必要です。 – user3171597

+0

が答えを更新しました。 –

+0

答えをありがとう!そしてこれはかなり新しいので、私はお詫びしますが、どのようにScheduleViewController内からプログラムで編集ボタンに接続しますか?または、ストーリーボード自体の中にボタンを指定して作成する必要がありますか? – user3171597

関連する問題