UITableViewController作为下拉列表?

时间:2015-07-27 23:22:59

标签: ios swift childviewcontroller

我想在点击UITableViewController时创建一个UIButton作为下拉列表。

我使用addChildViewController创建了一个,但我无法再次点击该按钮删除它。

我使用的代码:

var flag = 0
func filter(sender: UIButton){
 let _viewController = storyboard!.instantiateViewControllerWithIdentifier("UserViewController") as! UserViewController
 if(flag == 1){
            _viewController.willMoveToParentViewController(nil)
            _viewController.removeFromParentViewController()

        flag = 0
        return
    }

    addChildViewController(_viewController)
    _viewController.view.frame.origin.y = filterButton.frame.maxY
    _viewController.view.frame.origin.x = self.view.frame.size.width-250
    _viewController.view.frame.size.width = 250
    _viewController.view.frame.size.height = 500 
    self.view.addSubview(_viewController.view)
    flag = 1
}

2 个答案:

答案 0 :(得分:1)

您的情况很简单,因为每次单击按钮时都要实例化视图控制器。     您应该在FormsAuthentication.SignOut中实例化_viewController。此外,您必须在删除时从superview中删除视图,并在添加时将self设为父级。

详情请参阅此链接     How is a parent view controller notified that is's child view controller has removed itself?。     您的代码应如下所示,

viewDidLoad

答案 1 :(得分:0)

不要使用下拉菜单。它不属于iOS。

http://www.lukew.com/ff/entry.asp?1950