簡體   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