[Android]_ch3.5_GestureOverlayView元件介紹2
package com.derek.ch7_gesture;
import java.util.ArrayList;
import android.R.integer;
import android.app.Activity;
import android.gesture.Gesture;
import android.gesture.GestureLibraries;
import android.gesture.GestureLibrary;
import android.gesture.GestureOverlayView;
import android.gesture.GestureOverlayView.OnGesturePerformedListener;
import android.gesture.Prediction;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
GestureOverlayView gv;
TextView tv1;
GestureLibrary gl;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv1=(TextView)findViewById(R.id.textView1);
gv=(GestureOverlayView)findViewById(R.id.gestureOverlayView1);
gl=GestureLibraries.fromRawResource(MainActivity.this, R.raw.gestures);
if(!gl.load())
finish();
gv.addOnGesturePerformedListener(new OnGesturePerformedListener() {
@Override
public void onGesturePerformed(GestureOverlayView overlay, Gesture usr) {
ArrayList<Prediction> list=gl.recognize(usr);
if(list.size()>0){
StringBuilder sb=new StringBuilder("共"+list.size()+"筆--比對結果如下:\n");
for(int i=0;i<list.size();i++){
Prediction p=list.get(i);
String name=p.name;
double score=p.score;
sb.append(String.format("第%d筆:名稱:%s 分數:%.2f%n",(i+1),name,score));
}
if(list.get(0).score>2.0)
sb.append(String.format("比對結果: %s%n分數:%.2f",list.get(0).name,list.get(0).score));
else
sb.append("找不到相符資料...");
tv1.setText(sb);
}else{
Toast.makeText(MainActivity.this, "沒有任何比對資料!",Toast.LENGTH_SHORT).show();
}
}
});
}
}
沒有留言:
張貼留言