【问题标题】:How can i use multiple implements?如何使用多个工具?
【发布时间】:2019-10-16 20:23:36
【问题描述】:

我正在使用 Android Studio 制作应用程序。

我有一个

public class MainActivity extends Activity implements View.OnClickListener, OnCheckedChangeListener

我需要将“AppCompatActivity”添加到 MainActivity。

我在网上搜索了一下,发现只有一个可以用于extends。

所以我改成

public class MainActivity extends Activity implements View.OnClickListener, OnCheckedChangeListener, AppCompatActivity

这和 AppCompatActivity 有一个错误,即“此处应有接口”。

我该如何解决这个问题?

【问题讨论】:

    标签: android implements


    【解决方案1】:

    AppCompatActivity 是类而不是接口,因此您不能使用 implements 关键字继承 AppCompatActivity

    你需要使用extends关键字来继承AppCompatActivity

    使用这个

    public class MainActivity extends AppCompatActivity implements View.OnClickListener, OnCheckedChangeListener
    

    而不是

    public class MainActivity extends Activity implements View.OnClickListener, OnCheckedChangeListener, AppCompatActivity
    

    【讨论】:

    • 更改活动后,出现错误。 java.lang.IllegalStateException:您需要在此活动中使用 Theme.AppCompat 主题(或后代)。我认为我不应该更改 Activity
    • @문경욱 对于那个问题,请检查这个问题stackoverflow.com/q/21814825/7666442
    【解决方案2】:

    当您实现类而不是接口时,会出现“此处预期的接口”。 AppCompatActivity 是一个你无法实现的类。

    我不知道你为什么要从Activity 扩展除了AppCompatActivityAppCompatActivity 已经继承自Activity

    AppCompatActivity > FragmentActivity > SupportActivity > Activity
    

    只要写:

    public class MainActivity extends AppCompatActivity implements View.OnClickListener, OnCheckedChangeListener {
    

    当您这样做时,无需为您扩展Activity

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-29
      • 2018-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-05
      相关资源
      最近更新 更多