首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Android Studio中使用'implements‘函数

如何在Android Studio中使用'implements‘函数
EN

Stack Overflow用户
提问于 2016-12-19 22:25:44
回答 3查看 4.7K关注 0票数 0

我刚刚开始学习Android开发,目前正在关注新闻博斯顿的Android教程。我不知道为什么会出现这个错误:

代码语言:javascript
复制
Error:(10, 8) error: MainActivity is not abstract and does not override abstract method onFling(MotionEvent,MotionEvent,float,float) in OnGestureListener

下面是我的代码:

代码语言:javascript
复制
package com.example.gonzales.gestures;

import android.gesture.Gesture;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.AppCompatActivity;
import android.view.Menu;
import android.view.MenuItem;
import android.os.Bundle;
import android.widget.TextView;
import android.view.MotionEvent;
import android.view.GestureDetector;
import android.support.v4.view.GestureDetectorCompat;

//the error is because of this
public class MainActivity extends AppCompatActivity implements GestureDetector.OnGestureListener,
GestureDetector.OnDoubleTapListener {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
}
}

这几乎与本教程中的代码完全相同。任何帮助都将不胜感激。谢谢!

EN

回答 3

Stack Overflow用户

发布于 2016-12-19 22:29:37

你已经声明你已经实现了接口,这迫使你实现这些接口的方法,但你还没有实现。

作为处理即时错误的最低要求,您需要实现:

代码语言:javascript
复制
onFling(MotionEvent, MotionEvent, float, float)

但一旦完成,您可能会发现还有更多。

如果您不能立即理解上面的内容,那么您应该首先阅读Java和OOP中的继承和接口,而不是试图在症状显现时修复它们。你可以启动here

票数 1
EN

Stack Overflow用户

发布于 2016-12-19 22:29:51

以下任一项:

所需的方法

现在,您已经说了“是的,Java,我将实现这两个接口所需的所有方法”……而不实际实现这两个接口所需的所有方法。

您可以在the Java documentation中阅读有关Java接口的更多信息。

票数 1
EN

Stack Overflow用户

发布于 2016-12-19 22:29:51

因为您必须实现onFling方法。

尝试以下代码:

代码语言:javascript
复制
package com.example.gonzales.gestures;

import android.gesture.Gesture;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.AppCompatActivity;
import android.view.Menu;
import android.view.MenuItem;
import android.os.Bundle;
import android.widget.TextView;
import android.view.MotionEvent;
import android.view.GestureDetector;
import android.support.v4.view.GestureDetectorCompat;

//the error is because of this
public class MainActivity extends AppCompatActivity implements GestureDetector.OnGestureListener,GestureDetector.OnDoubleTapListener {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    @Override
    protected void onFling(MotionEvent,MotionEvent,float,float){
        //Do stuff with your fling event
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41224713

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档