Android-gesture recognition (custom gesture recognition: four custom gestures)

Source: Internet
Author: User
<span id="Label3"></p><span style="font-family:Comic Sans MS; font-size:18px"><span style="font-family:Comic Sans MS; font-size:18px">1. Review</span></span><p><p><span style="font-family:Comic Sans MS; font-size:18px">The previous implementation:</span></p></p><p><p><span style="font-family:Comic Sans MS; font-size:18px"></span></p></p><p style="font-family:‘Comic Sans MS‘; font-size:18px"><p style="font-family:‘Comic Sans MS‘; font-size:18px"><span style="font-size:18px">(1) Ontouchlistener Realization of the upper and lower left hand gesture recognition</span></p></p><p style="font-family:‘Comic Sans MS‘; font-size:18px"><p style="font-family:‘Comic Sans MS‘; font-size:18px"><span style="font-size:18px">(2) Ontouchlistener + Simpleongesturelistener + gesturedetector to realize the upper and lower left hand gesture recognition</span></p></p><span style="font-family:Comic Sans MS; font-size:18px"><span style="font-family:Comic Sans MS; font-size:18px">2. Focus</span></span><p><p><span style="font-family:Comic Sans MS; font-size:18px"> </span> <span style="font-size:18px; font-family:‘Comic Sans MS‘">(1) gestureoverlayview + gesturelibrary + ongestureperformedlistener for custom gesture recognition</span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">(2)<span style="color:#cc0000">Demo Download</span></span></p></p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-size:18px; font-family:‘Comic Sans MS‘">3.</span></span><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><br></span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><br></span></p></p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-size:18px; font-family:‘Comic Sans MS‘">4. Basic Steps</span></span><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">(1) Custom gesture Recognition files</span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">(2) Loading gesture File</span></p></p><p><p><span style="font-family:Comic Sans MS"><span style="font-size:18px">(3) <span style="font-family:‘Comic Sans MS‘; font-size:18px">Layout Implementation</span></span></span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">(4) recognition/reading gestures</span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"></span></p></p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-size:18px; font-family:‘Comic Sans MS‘">5. Custom gesture Files</span></span><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-size:18px; font-family:‘Comic Sans MS‘">5.1 New Android simple Project</span></span><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">Take eclipse as an example: <span style="font-family:‘Comic Sans MS‘; font-size:18px">android simple Project,</span> File, New, other, Android</span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-family:‘Comic Sans MS‘; font-size:18px"><br></span></span></p></p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-family:‘Comic Sans MS‘; font-size:18px">5.2 Next Select Android version</span></span></span><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-family:‘Comic Sans MS‘; font-size:18px"><br></span></span></p></p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-family:‘Comic Sans MS‘; font-size:18px">5.3 Next Select Gesturebuilder</span></span></span><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-family:‘Comic Sans MS‘; font-size:18px"><br></span></span></p></p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-family:‘Comic Sans MS‘; font-size:18px">5.4 Finish</span></span></span><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-family:‘Comic Sans MS‘; font-size:18px">Right-click Run Project--run and click Add Gesture---draw on your own defined gestures------done;</span></span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-family:‘Comic Sans MS‘; font-size:18px"><br></span></span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-family:‘Comic Sans MS‘; font-size:18px"><br></span></span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-family:‘Comic Sans MS‘; font-size:18px"><br></span></span></p></p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-size:18px; font-family:‘Comic Sans MS‘">5.5 getting gestrue gesture files</span></span><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">When clicked done, Show Toast Reminder file Address---save in sdcard, you can export;</span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><br></span></p></p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-size:18px; font-family:‘Comic Sans MS‘">6. Load gestrue gesture file</span></span><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">(1) Create a new raw folder under the Res folder;</span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">(2) Copy the gesture to the raw folder;</span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">(3) OnCreate in Riga</span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"></span></p></p><pre name="code" class="java"><pre name="code" class="java">Private Gesturelibrary library;</pre></pre><br><pre name="code" class="java"><pre name="code" class="java">Load gesture file library=gesturelibraries.fromrawresource (mainactivity.this,r.raw.gestures); library.load ();</pre></pre><br><p><p></p></p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-size:18px; font-family:‘Comic Sans MS‘">7. Layout Implementation</span></span><p><p></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">(1) add Gestureoverlayview in the layout file, you can put your own control in the layout;</span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><br></span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><br></span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">(2) example:</span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"></span></p></p><pre name="code" class="html"><relativelayout xmlns:android= "http://schemas.android.com/apk/res/android" xmlns:tools= "http// Schemas.android.com/tools "android:layout_width=" match_parent "android:layout_height=" match_parent "tools:context = "${relativepackage}.${activityclass}" > <android.gesture.gestureoverlayview android:id= "@+id/gestureOverl AyView1 "android:layout_width=" match_parent "android:layout_height=" match_parent "android:layout_cent erinparent= "true" > <imageview android:id= "@+id/img_test" android:layout_width = "match_parent" android:layout_height= "match_parent" android:layout_centerinparent= "true" android:l ayout_gravity= "center" android:src= "@drawable/icon_location"/> <textview android:id= "@ +id/textview1 "android:layout_width=" wrap_content "android:layout_height=" wrap_content " android:layout_margintop= "20dp" android:layout_gravity= "center|top" android:text= "no sliding" android:textcolor= "#0000ff" Android:textsize= "25sp"/> </android.gesture.GestureOverlayView></RelativeLayout></pre><br><br><p><p></p></p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-size:18px; font-family:‘Comic Sans MS‘">8. Identify gestures</span></span><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">(1) Realize Ongestureperformedlistener Monitoring</span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"></span></p></p><pre name="code" class="java"><pre name="code" class="java">/** * Third Way Custom mode * *///set Listener class Gestureoverlaylistener implements ongestureperformedlistener{@Overridepublic void ongestureperformed (gestureoverlayview overlay,gesture Gesture) {// Recognition Gesture: Read the gesture file through the library, read arraylist<prediction> predictions=library.recognize (gesture) here;//go First. Fetch the first prediction Prediction=predictions.get (0);//hint value string str= "no change Gesture";//more similarity to get interval (0.0~10.0 approximate interval) if ( Prediction.score>=5.0) {//by name to determine the value if (prediction.name.equals ("error")) {str= "error: sorry, wrong! "; Img_test.setimageresource (r.drawable.icon_error);} else if (prediction.name.equals ("light")) {str= "light: I am lightning"; img_test.setimageresource (r.drawable.icon_light);} else if (prediction.name.equals ("none")) {str= "none: nothing"; img_test.setimageresource (r.drawable.icon_none);} else if (prediction.name.equals ("right")) {str= "true: congratulations! "; Img_test.setimageresource (r.drawable.icon_true);}} Textview1.settext (str); Toast.maketext (mainactivity.this,str,toast.length_short). Show ();}} </pre></pre><br><p><p></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">(2) initializing controls and adding listeners</span></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘"></span></p></p><pre name="code" class="java"><pre name="code" class="java">gestureoverlayview1= (gestureoverlayview) Findviewbyid (r.id.gestureoverlayview1);// Add Gestureoverlayview1.addongestureperformedlistener (new Gestureoverlaylistener ());</pre></pre><br><p><p></p></p><span style="font-size:18px; font-family:‘Comic Sans MS‘"><span style="font-size:18px; font-family:‘Comic Sans MS‘">9.demo Downloads</span></span><p><p></p></p><p><p><span style="font-size:18px; font-family:‘Comic Sans MS‘">http://download.csdn.net/detail/lablenet/9063867<br></span></p></p><p><p><br></p></p> <p style="font-size:12px;"><p style="font-size:12px;">Copyright Notice: This article for Bo Master original article, without Bo Master permission not Reproduced.</p></p> <p><p>Android-gesture recognition (custom gesture recognition: four custom gestures)</p></p></span>
Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.