iOS摇动方法实现

   

iOS对于摇动进行了封装,直接可以使用MotionEvent来实现,代码如文档中实例,

首先设置view为firstResponder


- (BOOL)canBecomeFirstResponder
{
    //默认是NO,所以得重写此方法,设成YES
     return YES;
}

- (void)viewDidAppear:(BOOL)animated
{
     [self becomeFirstResponder];
}

然后实现下列方法://很像TouchEvent事件

- (void)motionBegan:(UIEventSubtype)motion withEvent:(UIEvent *)event
{

}

- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event
{
    NSLog(@"shake");
}

- (void)motionCancelled:(UIEventSubtype)motion withEvent:(UIEvent *)event
{

}
时间: 2024-10-12 03:58:02

iOS摇动方法实现的相关文章

IOS上传图片方法类

IOS上传图片方法类 iPhone开发中遇到上传图片问题,找到多资料,最终封装了一个类,请大家指点,代码如下 // // RequestPostUploadHelper.h // demodes // // Created by 张浩 on 13-5-8. // Copyright (c) 2013年 张浩. All rights reserved. // #import <Foundation/Foundation.h> @interface RequestPostUploadHelper

iOS 处理方法中的可变參数

## iOS 处理方法中的可变參数 近期写了一个自己定义的对话框的demo,想模仿系统的UIAlertView的实现方式.对处理可变參数的时候,遇到了小问题,于是谷歌了一下.写下了处理问题的方法.记录下来,以备后需. 代码实现 - (instancetype)initWithTitle:(NSString *)title message:(NSString *)message delegate:(id)delegate cancelButtonTitle:(NSString *)cancelBu

iOS 处理方法中的可变参数

## iOS 处理方法中的可变参数 最近写了一个自定义的对话框的demo,想模仿系统的UIAlertView的实现方式,对处理可变参数的时候,遇到了小问题,于是谷歌了一下,写下了处理问题的方法,记录下来,以备后需. 代码实现 - (instancetype)initWithTitle:(NSString *)title message:(NSString *)message delegate:(id)delegate cancelButtonTitle:(NSString *)cancelBut

iOS开发-方法调用在运行时的过程

方法调用在运行时的过程 如果用实例对象调用实例方法,会到实例的isa指针指向的对象(也就是类对象)操作. 如果调用的是类方法,就会到类对象的isa指针指向的对象(也就是元类对象)中操作. 首先,在相应操作的对象中的缓存方法列表中找调用的方法,如果找到,转向相应实现并执行. 如果没找到,在相应操作的对象中的方法列表中找调用的方法,如果找到,转向相应实现执行 如果没找到,去父类指针所指向的对象中执行1,2. 以此类推,如果一直到根类还没找到,转向拦截调用. 如果没有重写拦截调用的方法,程序报错. 以

Unity调用原生(iOS, Android)方法

Unity调用原生程序方法,定义接口(doTestSelector): using UnityEngine; using System.Collections; using System.Runtime.InteropServices; public class TestScript : MonoBehaviour { // This tells unity to look up the function FooPluginFunction // inside the static binary

IOS之方法混写(swizzling.)

OC中的混写(swizzling)是指透明地把一个方法换成另外一个.简明的说就是在运行时替换方法.利用方法混写可以改变那些没有源代码的对象(包括系统对象)的行为. 方法混写的代码看起来相对比较直观的,举个例子说明一下,之前做本地化翻译的时候就有用到 swizzling 方法.直接去swizze方法 awakeFromNib 然后替换成自己的方法实现以实现本地化翻译.详细可以看这篇文章:IOS本地化应用程序. 主要用到的代码也就这两句: +(void)load { // Autoload : sw

luajit 64位 for cocos2dx 编译ios解决方法

最近luajit发布了64位beta版,由于appstore上线必须是64位的应用,而且我的游戏项目用到lua脚本,所以必须要用到64位的luajit来编译lua脚本. 方法如下: 在luajit官网下载luajit源码: http://luajit.org 解压后,需要通过在luajit的文件夹上层目录,打开终端编译,编译方法如下命令: LUAJIT=./luajit-2.1.0-beta2 DEVDIR=`xcode-select -print-path`/Platforms IOSVER=

IOS学习 - 方法选择器Selector的相关使用

问题的由来 Objective-C是一门动态的语言,只要有可能,Objective-C总会使用动态的方式来解决问题,比如它尽可能的将编译和连接要做的事推迟到运行时,所以它需要一个强大的运行时系统(runtime)来执行编译好的代码.runtime的角色类似于Objective-C语言的操作系统,是Objective-C的灵魂.Objective-C的很多特性都是基于这个强大的运行时的,是十分值得去学习理解的. 动态语言Objective-C很常见的一个消息发送语句(比较准确的说是消息发送,在不混

ios 对方法的注释规范

一些小东西在此记录一下,以后会断断续续的记录下来其他的小知识,有时间可以翻来看看.1------关于ios注释规范 /** * @brief 带字符串参数的方法. * * @param valueOne 值. * @param valueTwo 值. * @return 返回value. * * @exception NSException 可能抛出的异常. * * @see someMethod * @see someMethodByInt: * @warning 警告: appledoc中显