iOS 纯代码写个侧滑栏功能
代码原理就是使用UIView并对其移动来完成,一个twoView作为侧滑栏,一个oneView作为主界面,需要弹出侧滑栏时对twoView向右移动200,当隐藏侧滑栏时,向左移动200就行了,twoVIew初始的x地址为-200。
#import@interfaceViewController:UIViewController @property(strong,nonatomic)NSArray *list; @end
// //ViewController.m //First // //Createdbyshanreal-iOSon17/10/16. //Copyright©2017年shanreal.LongZhenHao.Allrightsreserved. // #import"ViewController.h" @interfaceViewController() @property(nonatomic,strong)UIView*oneView; @property(nonatomic,strong)UIView*twoView; @property(nonatomic,assign)BooleanisShow; @property(nonatomic,strong)UIButton*btn_back; @property(nonatomic,strong)UIButton*btn_show; @end @implementationViewController -(void)viewDidLoad{ [superviewDidLoad]; //Doanyadditionalsetupafterloadingtheview. [selfinitLeftMenu]; } -(void)initLeftMenu{ //self.view.backgroundColor=[UIColorwhiteColor]; _isShow=NO; _oneView=[[UIViewalloc]initWithFrame:CGRectMake(0,0,self.view.frame.size.width+200,self.view.frame.size.height)]; _oneView.backgroundColor=[UIColorwhiteColor]; _twoView=[[UIViewalloc]initWithFrame:CGRectMake(-200,0,200,self.view.frame.size.height)]; _twoView.backgroundColor=[UIColorlightGrayColor]; [self.viewaddSubview:_oneView]; [self.viewaddSubview:_twoView]; _oneView.userInteractionEnabled=YES; UITapGestureRecognizer*tapGesture1=[[UITapGestureRecognizeralloc]initWithTarget:selfaction:@selector(backClick)]; [_oneViewaddGestureRecognizer:tapGesture1]; _btn_show=[[UIButtonalloc]initWithFrame:CGRectMake(self.view.frame.size.width/2-75,self.view.frame.size.height/2-15,150,30)]; _btn_show.backgroundColor=[UIColorwhiteColor]; [_btn_showsetTitle:@"弹出侧滑栏"forState:UIControlStateNormal]; [_btn_showsetTitleColor:[UIColorblackColor]forState:UIControlStateNormal]; [_btn_showaddTarget:selfaction:@selector(oneClick)forControlEvents:UIControlEventTouchUpInside]; [self.oneViewaddSubview:_btn_show]; _btn_back=[[UIButtonalloc]initWithFrame:CGRectMake(20,100,150,30)]; _btn_back.backgroundColor=[UIColorwhiteColor]; [_btn_backsetTitle:@"返回"forState:UIControlStateNormal]; [_btn_backsetTitleColor:[UIColorblackColor]forState:UIControlStateNormal]; [_btn_backaddTarget:selfaction:@selector(twoClick)forControlEvents:UIControlEventTouchUpInside]; [self.twoViewaddSubview:_btn_back]; } -(void)oneClick{ [UIViewanimateWithDuration:0.7animations:^{ //[_oneViewsetTransform:CGAffineTransformMakeTranslation(200,0)]; [_twoViewsetTransform:CGAffineTransformMakeTranslation(200,0)]; }]; _isShow=YES; } -(void)twoClick{ [UIViewanimateWithDuration:0.7animations:^{ //[_oneViewsetTransform:CGAffineTransformMakeTranslation(-200,0)]; [_twoViewsetTransform:CGAffineTransformMakeTranslation(-200,0)]; }]; _isShow=NO; } -(void)backClick{ if(_isShow==YES) [selfperformSelector:@selector(twoClick)]; } @end
以上这篇iOS纯代码写个侧滑栏功能就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。