【代码笔记】iOS-侧滑效果

来源:互联网 发布:aliasstudio软件下载 编辑:程序博客网 时间:2024/06/03 21:00

一,效果图。

二,工程图。

三,代码。

AppDelegate.h

复制代码
#import <UIKit/UIKit.h>//加入头文件#import "PPRevealSideViewController.h"@interface AppDelegate : UIResponder <UIApplicationDelegate,PPRevealSideViewControllerDelegate>@property (strong, nonatomic) UIWindow *window;@end
复制代码

 

AppDelegate.m

复制代码
#import "AppDelegate.h"#import "MainViewController.h"@implementation AppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];    // Override point for customization after application launch.        MainViewController *main = [[MainViewController alloc] init];    UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:main];    PPRevealSideViewController *revealSideViewController = [[PPRevealSideViewController alloc] initWithRootViewController:nav];    revealSideViewController.delegate = self;    self.window.rootViewController = revealSideViewController;        self.window.backgroundColor = [UIColor whiteColor];    [self.window makeKeyAndVisible];    return YES;}
复制代码

 

MainViewController.h

#import <UIKit/UIKit.h>@interface MainViewController : UIViewController@end

 

MainViewController.m

复制代码
#import "MainViewController.h"//加入头文件#import "PPRevealSideViewController.h"#import "leftViewController.h"#import "rightViewController.h"@interface MainViewController ()@end@implementation MainViewController- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil{    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];    if (self) {        // Custom initialization    }    return self;}- (void)viewDidLoad{    [super viewDidLoad];    // Do any additional setup after loading the view.        //设置背景色    self.view.backgroundColor= [UIColor orangeColor];        //隐藏导航条    self.navigationController.navigationBarHidden=YES;        // 手势左右滑动屏幕    UISwipeGestureRecognizer *swipeLeft = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleMoveFrom:)];    [swipeLeft setDirection:UISwipeGestureRecognizerDirectionLeft];    [self.view addGestureRecognizer:swipeLeft];        UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleMoveFrom:)];    [swipeRight setDirection:UISwipeGestureRecognizerDirectionRight];    [self.view addGestureRecognizer:swipeRight];  }// 滑动事件-(void)handleMoveFrom:(UISwipeGestureRecognizer *)swipe{    if(swipe.direction == UISwipeGestureRecognizerDirectionRight){                leftViewController *left = [[leftViewController alloc] init];        [self.revealSideViewController pushViewController:left onDirection:PPRevealSideDirectionLeft withOffset:50.0 animated:YES];    }    if(swipe.direction == UISwipeGestureRecognizerDirectionLeft){        rightViewController *right = [[rightViewController alloc] init];        [self.revealSideViewController pushViewController:right onDirection:PPRevealSideDirectionRight withOffset:50.0 animated:YES];     }}- (void)didReceiveMemoryWarning{    [super didReceiveMemoryWarning];    // Dispose of any resources that can be recreated.}
复制代码

 

rightViewController.h

#import <UIKit/UIKit.h>@interface rightViewController : UIViewController@end

 

rightViewController.m

复制代码
#import "rightViewController.h"@interface rightViewController ()@end@implementation rightViewController- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil{    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];    if (self) {        // Custom initialization    }    return self;}- (void)viewDidLoad{    [super viewDidLoad];    // Do any additional setup after loading the view.        //设置标题    self.title=@"right";    //设置背景色    self.view.backgroundColor=[UIColor blueColor];}- (void)didReceiveMemoryWarning{    [super didReceiveMemoryWarning];    // Dispose of any resources that can be recreated.}
复制代码

 

leftViewController.h

#import <UIKit/UIKit.h>@interface leftViewController : UIViewController@end

 

leftViewController.m

复制代码
#import "leftViewController.h"@interface leftViewController ()@end@implementation leftViewController- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil{    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];    if (self) {        // Custom initialization    }    return self;}- (void)viewDidLoad{    [super viewDidLoad];    // Do any additional setup after loading the view.        //设置标题    self.title=@"left";    //设置背景色    self.view.backgroundColor=[UIColor redColor];    }- (void)didReceiveMemoryWarning{    [super didReceiveMemoryWarning];    // Dispose of any resources that can be recreated.}
复制代码

 


0 0