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(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。