簡體   English   中英

如何在Swift的滑出菜單的主UIView后面添加UIView?

[英]How can I add a UIView behind the main UIView for a slide out menu in Swift?

我是新手,我想制作一個基本的滑出菜單,而不使用API​​來練習動畫和在Superview中疊加視圖。 我也鄙視界面生成器,因此我正在尋找100%的編程解決方案。

我已經創建了帶有導航欄的基本視圖,並且希望主視圖向右滑動以顯示TableViewController。 我具有用於將主視圖向右滑動的此功能,但是我得到的只是應該在TableViewController所在的黑屏。

誰能指出我正確的方向?

func animateLeftPanel(shouldExpand : Bool){

    let frameWidth = self.view.frame.width;
    let frameHeight = self.view.frame.height;
    slideOutMenu.tableView.frame = CGRect(x: 0, y: 0, width: frameWidth, height: frameHeight);

    if (shouldExpand) {

        UIView.animateWithDuration(0.3, animations: {() in

            self.view.addSubview(self.slideOutMenu.tableView);
            self.view.sendSubviewToBack(self.slideOutMenu.tableView)
            self.view.center.x += frameWidth - 50;
            self.menuShouldSlide = false;

        })

    } else {

        UIView.animateWithDuration(0.3, animations: {() in

            self.slideOutMenu.tableView.removeFromSuperview();
            self.view.center.x -= frameWidth - 50.0;
            self.menuShouldSlide = true;
        })

    }
}

您要在主視圖的頂部添加tableView,這意味着它將隨主視圖一起移動,而使后部保持空白。

self.view.addSubview(self.slideOutMenu.tableView)

您需要做的是在slideOutMenu.tableView上方的slideOutMenu.tableView上添加另一個視圖,並將其用作內容視圖。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM