Ios 如何正确配置MMDrawerController
我正在使用Ios 如何正确配置MMDrawerController,ios,iphone,swift,mmdrawercontroller,Ios,Iphone,Swift,Mmdrawercontroller,我正在使用MMDrawerController在iOS应用程序中创建幻灯片菜单。菜单很好用,但我有一些问题。我的菜单是ViewController,带有TableView,带有非常轻的4个自定义单元格 我的应用程序现在有了顶栏-我不知道如何关闭它 我有显示菜单的按钮。当我用手指在屏幕上滑动打开菜单时,它看起来很好,但当我第一次运行应用程序并按下此按钮时,菜单打开时会有一些视觉延迟。似乎菜单并没有完全加载-所以它首先显示在屏幕顶部附近,然后在适当的位置下降。只有当我第一次用按钮打开菜单时,才会发生
MMDrawerController
在iOS应用程序中创建幻灯片菜单。菜单很好用,但我有一些问题。我的菜单是ViewController
,带有TableView
,带有非常轻的4个自定义单元格
@IBAction func showMenu(sender: AnyObject)
{
var appDelegate : AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
appDelegate.centerContainer?.toggleDrawerSide(MMDrawerSide.Left, animated: true, completion: nil)
}
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
还是swift版本
UIApplication.sharedApplication().setStatusBarHidden(true, withAnimation: UIStatusBarAnimation.None)
viewDidLoad
中执行了太多的init操作,这就是它有点滞后的原因@property (nonatomic, assign) CGFloat maximumLeftDrawerWidth;
属性设置最大宽度[navigationController setNavigationBarHidden:YES];
Swift版本:
navigationController?.setNavigationBarHidden(navigationController?.navigationBarHidden == false, animated: true)
MMDrawer有三个导航控制器,分别用于中央、右侧和左侧VCs,因此,根据您的使用情况,您可以隐藏导航栏以显示您正在使用的导航控制器非常感谢。初始控制器的viewDidload只有init方法。你能告诉我把这个代码放在哪里吗?你可能知道如何用swift写它-我对ios开发人员很陌生)我改变了答案,所以它显示了隐藏状态栏的swift代码。至于延迟,您能否在抽屉视图中发布更多关于您正在设置的内容的代码?当你在主线程上做了太多的工作时,就会出现延迟,所以这可能是很昂贵的。你能告诉我如何从IBAction关闭菜单吗?我使用了这个[app.drawerController-toggleDrawerSide:MMDrawerSideLeft-animated:true-completion:nil];但它只是打开菜单,您可以使用
[app.drawerController closedraveranimated:YES completion:nil]代码>您需要将隐藏导航栏的代码放在初始化MMDrawerController的位置。2)和我的ViewController以及它的viewDidLoad都是默认值。从toggleDrawerSide方法运行时,加载方法可能有问题?请是appDelegate.centerContainer?.toggleDrawerSide(MMDrawerSide.Left,动画:true,完成:nil)关闭菜单?因为在我的例子中,它只是打开它
[drawerController setMaximumRightDrawerWidth:[UIScreen mainScreen].bounds.size.width/4];