Giter Site home page Giter Site logo

xlslidemenu's Introduction

XLSlideMenu

实现功能

  • 滑动显示左右菜单(支持快速滑动)
  • 调用方法显示左右菜单
  • 支持UINavigationController、UItabbarController,即UIViewController及其子类作为Window的根控制器
  • 滑动区域为界面两侧,不会和界面中的滚动视图发生冲突,并可自定义相应区域大小
  • 滑动只在NavigationController的个控制器显示时才会触发,其他自控制器不会触发菜单滑动方法

显示效果

示例图中的QQ界面只是截图

使用方法

1、创建方法:

(1)、导入头文件:

#import "XLSlideMenu.h"

(2)、创建菜单并设置成window的rootviewControler

XLSlideMenu *slideMenu = [[XLSlideMenu alloc] initWithRootViewController:rootNav];
//设置左右菜单
slideMenu.leftViewController = leftVC;
slideMenu.rightViewController = rightVC;
self.window.rootViewController = slideMenu;

2、使用方法:

(1)、显示左菜单

[self.xl_sldeMenu showLeftViewControllerAnimated:true];

(2)、显示右菜单

[self.xl_sldeMenu showRightViewControllerAnimated:true];

(3)、显示主界面

[self.xl_sldeMenu showRootViewControllerAnimated:true];

(4)、获取菜单宽度

self.xl_sldeMenu.menuWidth

(5)、获取留白宽度

self.xl_sldeMenu.emptyWidth

(6)、关闭滑动功能

self.xl_sldeMenu.slideEnabled = false;

(7)、跳转新界面

  • 判断RootViewController类型

  • 第一种情况:如果是UINavigationController就直接push

UINavigationController *nav = (UINavigationController *)self.xl_sldeMenu.rootViewController;
[nav pushViewController:newVc animated:false];
  • 第二种情况:如果是Tabbar就找到Tabbar的selectedViewController执行Push动作
UITabBarController *tabBarController = (UITabBarController *)self.xl_sldeMenu.rootViewController;
UINavigationController *nav = (UINavigationController *)tabBarController.selectedViewController;
[nav pushViewController:newVc animated:true];

个人开发过的UI工具集合 XLUIKit

xlslidemenu's People

Contributors

mengxianliang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

xlslidemenu's Issues

建议修复

我看了侧滑层级关系以及相关代码,发现其实你将menuView.frame = 屏幕的尺寸,其实这样是不对的。menu的frame应该等于它展示出来的尺寸,如果你那样写就有一部分视图被遮挡了,也就是布局展示问题。
建议fix

关于使用XLSlideMenu后,CPU飙升的问题

项目中集成了XLSlideMenu,首页push进去的页面,CPU飙升到100%+,导航栏是自己继承UINavigationController的导航栏,其他项目中都不存在这个问题。就是添加了XLSlideMenu后CPU飙得很高,不知道有没有解决方法。

push错乱

在leftview做push的时候 界面是乱的 rightview也出来了

跳转

单击右侧进行跳转到下一个界面的时候,抽屉如何进行关闭呢

写的很好楼主,星星已送出,但是有一个问题

楼主,如果rootViewController是tabbarController的时候,底部的tabbar是不会被_coverView覆盖上的,所以我在您的XLSlideMenu 的-viewDidLoad:方法**年添加了[_rootViewController.view bringSubviewToFront:_coverView]; 来实现tabbarController底部tabbar的遮盖

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.