繁体   English   中英

带有SlideView的iPad App导航-更改UIView的大小?

[英]iPad App Navigation with SlideView - change size of UIView?

我想创建一个正常宽度约为50像素的滑出菜单,如果用户按下扩展按钮,我还将显示该按钮的标签。

像这个例子:

示例菜单

创建此类菜单的正确方法是什么? 我虽然要使用2个视图,并将contentview的大小设置为width-50pixels。

但是我无法在ViewDidLoad函数中更改UIView的框架。 (这是一个例子)

override func viewDidLoad() {

    super.viewDidLoad()

    self.view.frame = CGRect(x:50, y:0, width:974, height:768)

    sidebarIsOpen = false
}

如果用户单击展开按钮

@IBAction func expandButtonClicked(sender : AnyObject) {

    var x = self.sidebarIsOpen! ? 50 : 300
    UIView.animateWithDuration(0.2, animations: {
        self.view.frame = CGRect(x:x, y:0, width:300, height:768)
        }, completion: { _ in
            self.sidebarIsOpen = !(self.sidebarIsOpen!)
        })
}

如果我再次单击该按钮,一切都很好。 但是在ViewDidLoad上,我无法将contentview向右移动。

提前致谢

病已由我自己找到了解决方案。

创建2个视图,并在单击按钮时为“ contentview”设置动画。

@IBOutlet weak var menuView: UIView!

@IBAction func toggleMenuButton(sender: UIBarButtonItem) {

    var x = self.sidebarIsOpen! ? 50 : 200

    UIView.animateWithDuration(0.2, animations: {
        self.contentView.frame = CGRect(x:x, y:0, width:974, height:768)
        }, completion: { _ in
            self.sidebarIsOpen = !(self.sidebarIsOpen!)
        })

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM