Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 安卓工作室摘要?_Java_Android_Android Studio - Fatal编程技术网

Java 安卓工作室摘要?

Java 安卓工作室摘要?,java,android,android-studio,Java,Android,Android Studio,当我启动应用程序时,它会崩溃: public abstract class MainActivity extends AppCompatActivity implements View.OnTouchListener, NavigationView.OnNavigationItemSelectedListener{ whitoutabstract和View.OnTouchListener它工作得非常完美。为什么?您需要覆盖查看的方法。在TouchListener界面上,而不是将

当我启动应用程序时,它会崩溃:

public abstract class MainActivity extends AppCompatActivity
        implements View.OnTouchListener, NavigationView.OnNavigationItemSelectedListener{

whitout
abstract
View.OnTouchListener
它工作得非常完美。为什么?

您需要
覆盖
查看的方法。在TouchListener
界面上,而不是将您的活动设置为
抽象
,因此请删除
抽象

public class MainActivity extends AppCompatActivity
        implements View.OnTouchListener, NavigationView.OnNavigationItemSelectedListener{
   // other code and methods of NavigationView.OnNavigationItemSelectedListener

    @Override
    public boolean onTouch(View v, MotionEvent event) {
        return true;
    }

}
或者,您可以使用错误帮助中的
添加未实现的方法
选项,或者按Ctrl+I查看未实现的方法列表

注意:
abstract
类无法实例化,请阅读

Android操作系统将在内部创建启动程序活动的对象,或者在使用
Intent
启动活动时也会创建该对象

参考文献


您是否为正在使用的接口实现了方法


当您添加
实现视图时。在TouchListener
上,您必须实际实现它

当您将其声明为
abstract
时,您不会实现所需的方法

这是:
onTouch(视图v,运动事件)

此处的信息:

只需添加:

@Override 
public onTouch(View v, MotionEvent event) {

}

它将被编译。

你真的试图初始化一个
抽象类吗?