2013-03-25 48 views
0

我无法重写onSwipe()方法。错误是“Adds类型的方法onSwipe(int)必须覆盖或实现超类型方法”。谁能告诉我我做错了什么?我想在使用滑动手势的活动之间导航。有没有其他方法可以做到这一点?如果是这样,请解释。我是否必须导入更多包?onSwipe(int direction)不起作用

package com.mahavega.qcdemo; 

import com.mahavega.qcdemo.R; 
import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.ImageView; 
import android.widget.TextView; 

public class Adds extends Activity { 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.ads); 
     TextView tv1 = (TextView) findViewById(R.id.textView1); 
     tv1.setOnClickListener(new OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       startActivity(new Intent(Adds.this, Ads2.class)); 
      } 
     }); 
     ImageView im1 = (ImageView) findViewById(R.id.imageView1); 
     im1.setOnClickListener(new OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       startActivity(new Intent(Adds.this, Real.class)); 
      } 
     }); 
    } 
    @Override 
    public void onSwipe(int direction) { 
     Intent intent = new Intent(); 

     switch (direction) { 
     case SimpleGestureFilter.SWIPE_RIGHT: 
      intent.setClass(this, Ads2.class); 
      break; 

     case SimpleGestureFilter.SWIPE_LEFT: 
      intent.setClass(this, Ads3.class); 
      break; 
     } 

     startActivity(intent); 
    } 
} 

回答

1

你的活动应该实现SimpleGestureListener以便能够接收手势事件。

public class Adds extends Activity implements OnGestureListener 
+0

显示错误“SimpleGestureListener无法解析为类型” – o3n 2013-03-25 14:35:49

+0

我的不好,这是一个错字,它应该是SimpleOnGestureListener – sokie 2013-03-25 14:39:08

+0

显示相同的错误。我需要导入任何包吗? – o3n 2013-03-25 14:40:54

0

您的错误读取的事实是Activity没有onSwipe(int)方法。所以错误是说你不能覆盖没有超级方法的方法。 同样@sokie说,从他添加的链接中检查出OnGestureListener。对于用于开始新活动的滑动手势, 从左向右滑动时,覆盖调用onBackPressed(就像你要回去)并从右向左滑动开始新的活动。尽管这意味着您必须在每个活动中创建手势监听器。

+0

如何获得这些刷卡事件? – o3n 2013-03-25 14:58:35

+0

通过实现该侦听器,您可以获得滑动事件。如果遇到问题,应该让IDE在导入包时帮助您。 – sokie 2013-03-25 15:21:42

+0

@ o3n您将onTouchListener实现到应用程序,然后将事件传递给手势侦听器,您应该有一个想法看完这篇文章后http://stackoverflow.com/a/938657/1359802 – Raigex 2013-03-25 15:28:10