Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • DownloadDownload
  • PrintPrint
Share this Page URL
Help

16. Core Motion > 16.4. Detecting Shakes on an iOS Device

16.4. Detecting Shakes on an iOS Device

Problem

You want to know when the user shakes an iOS device.

Solution

Use the motionEnded:withEvent: method of your app’s window object.

Discussion

The motionEnded:withEvent: method of your app’s window will get called whenever a motion has been captured by iOS. The simplest implementation of this method is this:

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

  /* Do something with the motion */

}

The motion parameter, as you can see, is of type UIEventSubtype. One of the values of type UIEventSubtype is UIEventSubtypeMotionShake, which is what we are interested in. As soon as we detect this event, we know that the user has shaken her iOS device. In order to get to our app’s window, though, we need to subclass UIWindow. To do so, follow these steps:


  

You are currently reading a PREVIEW of this book.

                                                                                        

Get instant access to over
$1 million worth of books and videos.

  

Start a Free Trial