首页 > 系统 > iOS > 正文

(ios)屏幕触摸总结

2019-11-14 20:44:06
字体:
来源:转载
供稿:网友

1  屏幕触控实现(单击 双击)

  [self becomeFirstResponder];     //允许多点互动     self.view.multipleTouchEnabled=TRUE;

实现事件部分

#PRagma mark-#pragma mark touch - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{     //触摸开始   }- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{    //移动    }- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{  //结束 UITouch *atouch=[touches anyObject];    if(atouch.tapCount>=2)    {        //双击    }    else if(atouch.tapCount==1)    {           //单击    }}- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event{}

2 手势识别(UIlabel 点击事件实现)

  //设置图片的点击事件    UITapGestureRecognizer *recongnizer=[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(handleTapFrom:)];recongnizer.numberOfTapsRequired=1;     self.img.userInteractionEnabled=YES;    [self.img addGestureRecognizer:recongnizer];}-(void)handleTapFrom:(UITapGestureRecognizer *)recognizer{      [self updateDisplayValuesWithTip:@"tap" tapCount:1 touchCount:1];}

 

 

3 屏幕晃动实现

//AppDelegate 中实现- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{    application.applicationSupportsShakeToEdit = YES;}//或者代码中实现 [[UIApplication sharedApplication] setApplicationSupportsShakeToEdit:YES];//ViewController 中实现下面方法- (void)motionBegan:(UIEventSubtype)motion withEvent:(UIEvent *)event NS_AVAILABLE_IOS(3_0);{}- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event NS_AVAILABLE_IOS(3_0){    if (event.subtype == UIEventSubtypeMotionShake) {                //摇一摇 行为             }}- (void)motionCancelled:(UIEventSubtype)motion withEvent:(UIEvent *)event NS_AVAILABLE_IOS(3_0){} 

 4 图片滑动换页

 

UISwipeGestureRecognizer *recognizer;       self.img.userInteractionEnabled=YES;    recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)];    [recognizer setDirection:(UISwipeGestureRecognizerDirectionRight)];    [[self img] addGestureRecognizer:recognizer];            }-(void)handleSwipeFrom:(UISwipeGestureRecognizer *)recognizer {    NSLog(@"Swipe received.");        if (recognizer.direction==UISwipeGestureRecognizerDirectionRight) {        NSLog(@"swipe down");        [UIView beginAnimations:nil context:nil];        [UIView setAnimationDuration:2.0f];        [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];        [UIView setAnimationRepeatAutoreverses:NO];        [UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.view cache:YES];        //界面变化部分       //........                [UIView commitAnimations];    }}

 


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表