我是iOS开发的新手,面临的问题很少。我不知道这种方法的好坏,但我不想使用任何第三方。我想像侧边栏那样制作侧边栏,我的代码是
- (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
}
}
我在storyborad中有两个uiview,一个是profile,另一个是menuViewController.why menuView没有正确加载 result of above code
答案 0 :(得分: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?
如果您的要求不同,请发表评论。
答案 1 :(得分:0)
有两种方法可以做到这一点:
在同一个控制器上使用2个UIViews。您可以将ViewView与视图一起添加,并将其初始隐藏起来。使用按钮切换以显示/隐藏菜单。就像xview.hidden = TRUE / xview.hidden = FALSE来显示/隐藏视图一样。您可以使用动画为其提供外观等菜单。
为MenuDisplay使用不同的视图控制器并将其添加到当前视图控制器,如[xview addsubView:menuview.view]和[menuview.view removefromsuperview]