2014-10-12 71 views
2

我是iOS開發新手,面臨小問題。我不知道這種方法是好還是壞,但我不想使用任何第三方。我想讓邊欄像Facebook邊欄和我的代碼是ios7中的自定義邊欄

- (IBAction)basicProfile:(id)sender { 

    menuViewController *destVC = [self.storyboard instantiateViewControllerWithIdentifier:@"menuView"]; 


    CATransition *animation = [CATransition animation]; 
    [animation setDuration:0.5]; 
    [animation setType:kCATransitionPush]; 
    [animation setSubtype:kCATransitionFromLeft]; 
    [animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]]; 
    CGRect view = self.view.frame; 
    view.origin.x = 280; 




    if(self.view.frame.origin.x > 100) 
    { 
     [UIView beginAnimations:nil context:(__bridge void *)(self.scrollView)]; 
     [UIView setAnimationDuration:0.25]; 
     NSLog(@"%f", self.view.frame.origin.y); 
     self.view.frame = CGRectMake(0,0,320,568); 
     [UIView commitAnimations]; 

    } 

    else{ 
     [self.showView setHidden:NO]; 
    [UIView beginAnimations:nil context:(__bridge void *)(self.scrollView)]; 
    [UIView setAnimationDuration:0.25]; 
    NSLog(@"%f", self.view.frame.origin.y); 
    self.view.frame = CGRectMake(280,0,320,568); 
    [UIView commitAnimations]; 
     [self.view addSubview:destVC.view]; // this line added menuView to profile view but not on sidebar 
    } 
} 

我有兩個的UIView在storyborad一個配置文件和其他的menuViewController.why menuView無法正常加載 result of above code

+0

1:***我不想要使用任何第三方*** – 2014-10-12 06:50:53

+0

沒有:(我仍在搜索,但臨時我用這個CDRTranslucentSideBar庫。 – Haseeb 2014-10-22 07:34:25

回答

0

步驟01:基本上,你需要的是一個的viewController和2次(1對於側欄和另一個主視圖)。

步驟02:您將需要將這兩個視圖添加到視圖控制器。

步驟03:而不是添加一個按鈕,使用以下切換:

-

(void)OnCollapsibleExtenderTouchUpInside 
{ 
    [UIView animateWithDuration:1.0 animations:^{ 

    [sideBarObj ToggleVuPosition]; 

    [mainVuObj ToggleVuSize]; 

}]; 

} 

注:已經有上堆棧溢出的解釋

您可以按照這一個: Sidebar menu implementation on iOS like Facebook?

如果您的要求不同,請發表評論。

0

有這樣做的方法2:

  1. 同一個控制器上使用2個UIViews。您可以將您的MenuView與您的視圖一起添加,並將其隱藏起來。使用按鈕切換顯示/隱藏菜單。它將像xview.hidden = TRUE/xview.hidden = FALSE一樣顯示/隱藏視圖。你可以使用動畫來給它一個菜單,如外觀。

  2. 使用一個不同的視圖控制器MenuDisplay並將其添加到當前視圖控制器等[的xView addsubView:menuview.view]和[menuview.view removefromsuperview]