내 Buttons
onClickListener
나는이 다음 코드 : enter(words, linearLayout, llp, view);
으로 스 와이프 제스처가 인식되지 들어
on_enter_button.setOnClickListener(
new View.OnClickListener()
{
public void onClick(View view)
{
enter(words, linearLayout, llp, view);
}
});
Button
, 나는 단순히 어느 방향으로 화면을 Swipe
과 같은 방법을 실행하려는 입력
현재 제 프로그램이 제스처를 전혀 인식하지 못한다고 생각합니다. 내가 enter(words, linearLayout, llp, view);
을 잘못 배치했기 때문이라고 생각합니다. 또한 모든 Gesture
인식 코드를 onCreate()
안에 넣었습니다. 이것이 코드를 프로그래밍하는 올바른 방법입니까?
누군가 도와 드릴 수 있습니까?
EDITED CODE :
public class Game extends Activity{
public void enter(String[] w, LinearLayout ll, LinearLayout.LayoutParams params, View v){
... //some code
... //some code
... //some code
}
@Override
public boolean onTouchEvent(MotionEvent event) {
return myGestureDetector.onTouchEvent(event);
//error myGestureDetector not recognized since it's created in onCreate so it does not exist here
}
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.game_activity);
SimpleOnGestureListener mySimpleGestureListener = new SimpleOnGestureListener()
{
@Override
public boolean onDoubleTap(MotionEvent e) {
return super.onDoubleTap(e);
}
@Override
//swipe does not work!
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,float velocityY)
{
enter(words, linearLayout, llp, view);
return super.onFling(e1, e2, velocityX, velocityY);
}
@Override
public void onLongPress(MotionEvent e) {
super.onLongPress(e);
}
@Override
public boolean onSingleTapConfirmed(MotionEvent e) {
return super.onSingleTapConfirmed(e);
}
private boolean permissibleYVelocity(float velocityY)
{
if ((velocityY < -200) || (velocityY > 200))
{
return false;
}
else
{
return true;
}
}
};
final GestureDetector myGestureDetector = new GestureDetector(getApplicationContext(), mySimpleGestureListener);
//button listener works
on_enter_button.setOnClickListener(
new View.OnClickListener()
{
public void onClick(View view)
{
enter(words, linearLayout, llp, view);
}
});
}
}
내가 내 SimpleOnGestureListener에서 다음을 무시 함 수업? – user2456977
Fling을 듣고 싶은 어떤 관점에서든 View.onTouchEvent()를 오버라이드 할 수 있습니다.이 경우에는 Activity 클래스를 사용합니다. 'SimpleOnGestureListener.onFling()'당신은 이미 가지고 있고, 아무것도하지 않습니다. – tachyonflux
죄송합니다. 어디에서 onFling()을 호출합니까? 온 터치 내부? 아니면 SimpleGesture에있는 onFling()을 변경합니까? – user2456977