我正在使用MMDrawerController
在我的iOS应用中创建幻灯片菜单。菜单运行良好,但我有一些麻烦。我的菜单为ViewController
,TableView
,自定义单元格非常清晰。
我有显示菜单的按钮。当我用手指在屏幕上滑动打开它时,菜单看起来很好但是当我第一次运行应用程序时按下此按钮菜单会打开一些视觉延迟。似乎菜单没有完全加载 - 所以它首先显示在屏幕顶部附近,然后它在正确的位置下降。只有当我第一次用按钮打开菜单时才会发生这种情况。这是行动。
@IBAction func showMenu(sender: AnyObject)
{
var appDelegate : AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
appDelegate.centerContainer?.toggleDrawerSide(MMDrawerSide.Left, animated: true, completion: nil)
}
如何设置菜单宽度?我的菜单很宽,也许可以自定义为更小。
答案 0 :(得分:0)
可能是由于mmdrawer的导航控制器,为此您需要隐藏这些控制器的导航栏。
[navigationController setNavigationBarHidden:YES];
Swift版本:
navigationController?.setNavigationBarHidden(navigationController?.navigationBarHidden == false, animated: true)
MMDrawer有三个用于中央,左右VC的导航控制器,因此根据您的使用情况,您可以隐藏导航栏以了解您正在使用的导航控制器。
这应该可以正常工作,因为当你通过滑动屏幕打开视图时,它说工作正常,在我的情况下,它适用于两种情况。正如@Majster所说"你可能在viewDidLoad中做了太多初始化的东西,这就是为什么它有点滞后。"情况可能就是这样。
你可以使用
[drawerController setMaximumRightDrawerWidth:[UIScreen mainScreen].bounds.size.width/4];
抽屉获得1/4的屏幕。