iOS可伸缩菜单

我目前正在开发一个包含音乐播放器的应用程序。 截至目前,它有一个播放,暂停和一个select歌曲button,显示当前歌曲播放。 现在,玩家总是在屏幕上。 我想使它成为页面中间的一个button,以便当用户单击该button时,会出现播放,暂停和select歌曲button/图标的整个媒体播放器。 当他们再次点击该中间button时,它应该隐藏这些图标。

如果有人能指出我是正确的方向,无论是已经出来的教程,或其他讨论(我真的找不到任何真正的),这将是真棒!

注意:我不是要制作Facebook使用的popover菜单。 此菜单/audio播放器将在当前视图上水平展开/缩回

先谢谢你!!!!

我并不确定你要找什么样的视觉效果,但我想你已经说过了 – 只是把它们藏起来。

你可以通过几种方法来做到这一点。

一个简单的方法就是把这些元素放在他们自己的视angular内。 使用故事板或xib文件。 把你的button和控件,你想隐藏显示在视图中。

然后在视图控制器中为该视图创build一个引用。 称之为controlsView。

@property (strong,nonatomic) IBOutlet UIView *controlsView; 

确保你连接了这个视图。

然后当按下button时,只隐藏整个视图:

  self.controlsView.hidden = YES; 

再次推时,显示:

  self.controlsView.hidden = NO; 

如果你想要一个更平滑的外观和感觉,把它包装成这样的animation:

  //to hide [UIView animateWithDuration:2 animations:^{ [self.controlsView setAlpha:0]; } completion { self.controlsView.hidden = YES; }]; //to show self.controlsView.alpha = 0; self.controlsView.hidden = NO; [UIView animateWithDuration:2 animations:^{ [self.controlsView setAlpha:1.0]; } completion { }]; 

希望有所帮助

听起来就像你需要查看视图对象的隐藏属性(允许您使视图可见/不可见),并可能使用.frame属性(设置位置,高度/宽度)。

如果没有关于您要实现的效果的更多详细信息,则很难多说。 如果使用界面构build器设置要显示的视图/ UI对象,则可以简单地将基本视图设置为隐藏在界面构build器中,然后在用户单击button时设置.hidden = NO。

注意:为了能够像这样显示/隐藏所有的单元,我假设你在界面生成器中使用一个UIView对象作为容器(大小和放置在你想要的位置),然后添加你的控制器button作为子在单一视图内的对象。 这允许您通过为包含视图设置.hidden属性来显示/隐藏所有内容。