我正在使用 AMSlideMenu,我在 MainVC 中使用
// Enabling Deepnes on left menu
- (BOOL)deepnessForLeftMenu
{
return YES;
}
// Enabling Deepnes on right menu
- (BOOL)deepnessForRightMenu
{
return YES;
}
正常情况下,左右菜单会有深度效果,但没有任何反应。
有没有人以前尝试过 AMSlideMenu 并且有相同的 pb ?
最佳答案
是的,它正在工作。你只需要观察它。如果启用了 -deepnessForLeftMenu
,您可以看到菜单将被转换,并显示左侧菜单的动画和缩放。
在 AMSlideMenuMainViewController.m
类中为以下方法进行调试检查,您将看到不同之处。
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
// Put a break point here.
if (self.leftMenu && [self deepnessForLeftMenu])
{
self.leftMenu.view.layer.transform = kMenuTransformScale;
self.leftMenu.view.layer.opacity = kMenuLayerInitialOpacity;
}
if (self.rightMenu && [self deepnessForRightMenu])
{
self.rightMenu.view.layer.transform = kMenuTransformScale;
self.rightMenu.view.layer.opacity = kMenuLayerInitialOpacity;
}
}
还有 deepnessForLeftMenu
bool 变量在同一类的其他两个方法中使用
- (void)configure3DTransformForMenu:(AMSlideMenu)menu panningView:(UIView *)panningView
{
float cx = 0;
float cy = 0;
float cz = 0;
float opacity = 0;
// Put a break point here.
/********************************************* DEEPNESS EFFECT *******************************************************/
if (menu == AMSlideMenuLeft && panningView.frame.origin.x != 0 && [self deepnessForLeftMenu])
{
// Codes for deepness effect
}
}
如果为 deepnessForLeftMenu
变量设置NO
。您将能够看到该菜单将显示平面动画。
关于ios - AMSlideMenu 菜单的深度效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26785378/