无法在AppCompatActivity中实现

时间:2018-10-04 19:04:50

标签: java android android-studio datepickerdialog

这是我的代码,到目前为止我已经尝试过:

import android.support.v7.app.AppCompatActivity
import android.os.Bundle

public class MainActivity : AppCompatActivity  ()   {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }

}

看来我无法更改为

import android.support.v7.app.AppCompatActivity
import android.os.Bundle

public class MainActivity extends AppCompatActivity  implement DatePickerDialog.OnDateSetLisTener   {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }

}

我无法将mycode更改为导入,从而扩展了该错误

3 个答案:

答案 0 :(得分:2)

您使用过Kotlin

让Kotlin像这样:

import android.app.DatePickerDialog
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.widget.DatePicker

class MainActivity : AppCompatActivity(), DatePickerDialog.OnDateSetListener {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }

    override fun onDateSet(view: DatePicker?, year: Int, month: Int, dayOfMonth: Int) {
        TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
    }
}

答案 1 :(得分:0)

首先,我认为您不熟悉Java中的接口或类应如何实现该接口,因此语法非常不正确。

正确的格式应为:

public class MainActivity extends AppCompatActivity implements DatePickerDialog.OnDateSetListener   {

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

}

如果这确实是您想要实现的,请在此处查看interfaces

答案 2 :(得分:0)

您可能正在使用Kotlin语言而不是Java。 Kotlin文件以.kt扩展名结尾。您可以将其替换为包含以下内容的Java文件(扩展名.java):

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity implement DatePickerDialog.OnDateSetListener {

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

}