package com.androidbook;
import java.util.ArrayList;
import android.app.Activity;
import android.gesture.Gesture;
import android.gesture.GestureLibraries;
import android.gesture.GestureLibrary;
import android.gesture.GestureOverlayView;
import android.gesture.Prediction;
import android.gesture.GestureOverlayView.OnGesturePerformedListener;
import android.os.Bundle;
import android.util.Log;
import android.widget.Toast;
public class HelloActivity extends Activity implements OnGesturePerformedListener{
private static final String TAG = \"Gesture Revealer\";
GestureLibrary gestureLib = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//gestureLib = GestureLibraries.fromRawResource(this, R.raw.gestures);
gestureLib = GestureLibraries.fromFile(\"/sdcard/gestures\");
if(!gestureLib.load()) {
Toast.makeText(this, \"/sdcard/gestures에서 로딩 할 수 없습니다.\",
Toast.LENGTH_SHORT).show();
finish();
}
Log.v(TAG, \"Library features:\");
Log.v(TAG, \" Orientataion style: \" + gestureLib.getOrientationStyle());
for( String gestureName : gestureLib.getGestureEntries()) {
Log.v(TAG, \"For gesture \" + gestureName);
int i = 1;
for( Gesture gesture : gestureLib.getGestures(gestureName)) {
Log.v(TAG, \" \" + i + \": ID: \" + gesture.getID());
Log.v(TAG, \" \" + i + \": Strokes count: \" + gesture.getStrokesCount());
Log.v(TAG, \" \" + i + \": Strokes length: \" + gesture.getLength());
i++;
}
}
GestureOverlayView gestureView = (GestureOverlayView) findViewById(R.id.gestureOverlay);
gestureView.addOnGesturePerformedListener(this);
}
@Override
public void onGesturePerformed(GestureOverlayView view, Gesture gesture) {
ArrayList<Prediction> predictions = gestureLib.recognize(gesture);
if(predictions.size() > 0) {
Prediction prediction = (Prediction) predictions.get(0);
if(predictions.size() > 1.0) {
Toast.makeText(this, prediction.name, Toast.LENGTH_SHORT).show();
for(int i=0; i<predictions.size(); i++)
Log.v(TAG, \"prediction\" + predictions.get(i).name + \" - score = \" + predictions.get(i).score);
}
}
}
}
저 부분에서 에러가 나는데
왜 에러가 나는 걸까요???? ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ
The method onGesturePerformed(GestureOverlayView, Gesture) of type HelloActivity must override a superclass method
이런 에러 메시지가 떠요
에러가 나면 최소한 에러메세지정도는 첨부하는게 매너
네 올렷습니다. 에러메세지ㅠㅠ
http://developer.android.com/resources/articles/gestures.html
project->clean 해보셈..
위 방식대로 Listener를 선언해보세요. 감이지만, Listener가 문제 있을거 같아서요...
그래두 에러나요,,,ㅠㅠㅠ
코드 복사 붙여넣기 해서 새 클래스 만들어서 넣어봐. 난 저거 복사해보니까 에러없네
왜 전 에러가 뜨는거죠?? ㅠㅠ
project->clean 확실해 해봤나요?
넴! 했는데도 에러떠잇어욧
android 버전확인해보세요.
http://code.google.com/p/apps-for-android/downloads/detail?name=GesturesDemos.zip&can=2&q=#makechanges
그리고 이 링크다운받아서 실행시켜봐요. 이것조차도 안된다면 IDE자체가 문제.
저안드로이드2.2버전사용하거든요
저코드도2.인데ㅠㅜ
코드 전부가 아니고 일부인가? 어쨌든 해당 코드를 본인의 이클립스에서 돌려보니까 이상이 없고 결국 어딘가 문제가 있다는 소린데 개인적으로 class파일을 다시 만들길 추천. 위 내용을 복사 붙여넣기 하면 제대로 될지도 몰라