#import
创新互联公司自2013年起,先为潘集等服务建站,潘集等地企业,进行企业商务咨询服务。为潘集企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
@interface weixinControl : UIControl
-(weixinControl *)initWithFram:(CGRect)rect;
@end
#import"weixinControl.h"
@implementation weixinControl
{
CGRect _rect;//记录self.frame的大小
UIView *_frontView; //用来显示主要内容
CGPoint _originPoint;//记录开始touch时的position
CGPoint _currentPoint;//记录当前位置
CGRect _frontViewOriginRect;//记录frontVie的初始fram
CGFloat _offsetXPosition; //记录x的位移量
UIButton *_delBtn; //删除按钮
}
-(weixinControl *)initWithFram:(CGRect)rect
{
if (self = [super initWithFrame:rect]) {
self.backgroundColor = [UIColorcyanColor];
_rect = rect;
_offsetXPosition = 0.0f;
[selfmakeDeletButton];
[selfmakeFrontView];
}
returnself;
}
-(void)makeDeletButton
{
_delBtn = [UIButtonbuttonWithType:UIButtonTypeRoundedRect];
_delBtn.frame =CGRectMake(_rect.size.width - 50, 0, 50,_rect.size.height);
[_delBtnsetTitle:@"删除"forState:UIControlStateNormal];
_delBtn.backgroundColor = [UIColorredColor];
[selfaddSubview:_delBtn];
}
-(void)makeFrontView
{
_frontView = [[UIViewalloc]initWithFrame:CGRectMake(0, 0,_rect.size.width,_rect.size.height)];
_frontViewOriginRect =_frontView.frame;
_frontView.backgroundColor = [UIColorblueColor];
[selfaddSubview:_frontView];
}
-(void)touchesBegan:(NSSet
{
UITouch *beganTouch = [touches anyObject];
_originPoint = [beganTouchlocationInView:self];
}
-(void)touchesEnded:(NSSet
{
if (_offsetXPosition < (0 -_delBtn.frame.size.width)) {
_frontView.frame =CGRectMake((0 -_delBtn.frame.size.width),_frontViewOriginRect.origin.y,_frontViewOriginRect.size.width,_frontViewOriginRect.size.height);
}
else
{
_frontView.frame =_frontViewOriginRect;
}
}
-(void)touchesMoved:(NSSet
{
UITouch *moveTouch = [touches anyObject];
_currentPoint = [moveTouchlocationInView:self];
_offsetXPosition =_currentPoint.x -_originPoint.x;
if (_offsetXPosition >= 0) {
return;
}
_frontView.frame =CGRectMake(_offsetXPosition,_frontViewOriginRect.origin.y,_frontViewOriginRect.size.width,_frontViewOriginRect.size.height);
}
@end