我创建了一个视图控制器(JournalViewController),它包含2个容器视图(MealPlanViewController,ExerciseViewController - 你可以忽略这个容器)。 MealPlanViewController有一个UITableView,我希望能够使用左侧导航编辑按钮项删除/移动UITableview的行。但是,当我在JournalViewController中创建导航项时,我不知道如何使用容器视图的UITableView使其可编辑。
以下是一个例子:
这是我的JournalViewController类:
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 :(得分:0)
在mealPlanViewController类中,您可以在用户按下编辑按钮时设置IBAction。在IBAction中,您可以调用任何影响Tableview的函数。
@IBAction func editTable() {
tableView.setEditing(true, animated: true)
}
在此之后,您的TableDelegate函数将接管删除和移动行。