Half screen view , iOS Sidebar Menu

后端 未结 5 1981
清歌不尽
清歌不尽 2021-01-02 13:46

As I want to display number of menus on a left side of a screen just like following-it is a new Facebook application.when you click on bar shown as a red square around it,th

5条回答
  •  伪装坚强ぢ
    2021-01-02 14:43

    NO there are no SDK available to do this. you can do this by two way.

    1. By using two UIViewController
    2. By using two UIView.

    I recommend second one because I have used it and working fine.

    For first approach you will find some example and demo on github.com.

    let me give you short idea how I have implemented it by using two UIView.

    Your all normal content will be in default UIView and slide controls will be on second view.

    By default normal UIView will be visible and slider UIView be at -x pos something like (-200,0,200,320) set this according to your need.

    When you click show/hide button it change its frame property so normal UIView slide right side 200 pt and slider UIView come in screen.

    Let me show u some code to hide/unhide:

    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.5];
    view.frame = CGRectMake(250,
               view.frame.origin.y,
               view.frame.size.width,
               view.frame.size.height);;
    
    slideView.frame = CGRectMake(0, view.frame.origin.y, 250, view.frame.size.height);;
    
    [UIView commitAnimations];
    

    Parameter in CGRectMake can be anything according to what you want.

    To implement this make a subclass of UIView. and add UITableView if u want look like facebook.

    Update:

    While searching some new implementation I found a wonderful job on this concept by one developer. If anyone is thinking to add this feature than you must visit this once : MMDrawerController

    All the best

提交回复
热议问题