‘startActivity(android.content.Context, android.content.Intent, android.os.Bundle)‘ in ‘androidx.cor

'startActivity(android.content.Context, android.content.Intent, android.os.Bundle)' in 'androidx.core.content.ContextCompat' cannot be applied to '(android.content.Intent)'

这个错误通常出现在你尝试在一个非 Activity 类中使用 startActivity 方法时。

startActivity 方法是一个用于启动新的 Activity 的方法,它需要一个有效的上下文(Context)作为第一个参数。

如果你在一个非 Activity 类中尝试调用 startActivity,你需要确保你有一个有效的上下文对象可供使用。通常情况下,你可以从一个 Activity 中获取上下文对象,然后将其传递给非 Activity 类。

在你的错误消息中提到了 androidx.core.content.ContextCompat,这是 AndroidX 库中的一个工具类,它通常用于获取上下文对象。如果你在非 Activity 类中使用它,你需要确保传递正确的上下文参数。以下是一个示例:

import android.content.Context;
import android.content.Intent;
import androidx.core.content.ContextCompat;

public class MyNonActivityClass {

    private Context context;

    public MyNonActivityClass(Context context) {
        this.context = context;
    }

    public void startNewActivity() {
        Intent intent = new Intent(context, MyActivity.class);
        context.startActivity(intent);
    }
}

在上面的示例中,MyNonActivityClass 接受一个上下文对象,并在需要时使用它来启动一个新的 Activity。

请确保你在非 Activity 类中具有有效的上下文对象,并且将其传递给 startActivity 方法。

你可能感兴趣的:(安卓开发基础场景,android,androidx)