我想从左边滑动透明菜单

时间:2012-05-23 12:12:06

标签: objective-c ios

example of slide out menu

我想实现如上所示的菜单。我是一个iOS新手。几天以来,我一直在寻找那种控制。

有人可以从头开始一步一步地指导我吗?

1 个答案:

答案 0 :(得分:1)

您可以按以下步骤实施上述步骤: -

1>左侧菜单视图是作为子视图添加的UIView,其上添加了各种cutom UIButtons作为子视图。

2>最初,您必须设置框架,以便仅显示视图的特定部分(面板部件)。

3>在点击指示器按钮上,将框架展开到完整状态以显示按钮。

4>在下一次点击即(奇数点击)抓住框架。

使用简单的UIView动画可以实现上面的动画。

示例代码(原始帧宽= 300,高度300): -

yourMenuView.frame=CGRectMake(0,10,100,300);

[yourViewController addSubview:yourMenuView];

-(IBAction)expandMenu:(id)sender
{
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.75];
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
CGRect frame=yourMenuView.frame;
frame.size.width+=200;
yourMenuView.frame=frame;
[myview removeFromSuperview];
[UIView commitAnimations];
}

-(IBAction)collapseMenu:(id)sender
{
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.75];
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
CGRect frame=yourMenuView.frame;
frame.size.width-=200;
yourMenuView.frame=frame;
[myview removeFromSuperview];
[UIView commitAnimations];

}