Java 错误:不兼容的类型:无法将MainFragment转换为活动

Java 错误:不兼容的类型:无法将MainFragment转换为活动,java,android,android-sqlite,Java,Android,Android Sqlite,Java类“MainFragment” 我的错误是: C:\Users\tibim\AndroidStudioProjects\licenta23\app\src\main\java\com\example\licenta23\MainFragment.java:130: error: incompatible types: MainFragment cannot be converted to Activity MainFragment.this, 首

Java类“MainFragment”

我的错误是:

C:\Users\tibim\AndroidStudioProjects\licenta23\app\src\main\java\com\example\licenta23\MainFragment.java:130: error: incompatible types: MainFragment cannot be converted to Activity
                    MainFragment.this,

首先,像这样更改构造函数助手(删除MainFragment并设置上下文):

下一步,在你的片段中,像这样对活动进行特殊化:

   private AppCompatActivity activity;


    @Override
    public void onAttach(@NonNull Context context) {
       super.onAttach(context);
       if (context instanceof AppCompatActivity) {
          activity = (AppCompatActivity) context;
      }
    }
下一步更改您的帮助者并单击Listener以获得权限:

  //...
    sqLiteHelper = new SQLiteHelper(activity, "CarDB.sqlite", null, 1);




 //...
     btnChoose.setOnClickListener(new View.OnClickListener() {
     @Override
     public void onClick(View view) {
        ActivityCompat.requestPermissions(
              //this change
                activity,
                new String[] {Manifest.permission.READ_EXTERNAL_STORAGE},
                REQUEST_CODE_GALLERY
             );

         }
    });

它很管用,谢谢!但是,当我点击“选择照片”按钮时,不要让我进入电话库。固定代码格式固定大写
 public SQLiteHelper(@Nullable Context context, @Nullable String name, @Nullable SQLiteDatabase.CursorFactory factory, int version) {
    super(context, name, factory, version);
 }
   private AppCompatActivity activity;


    @Override
    public void onAttach(@NonNull Context context) {
       super.onAttach(context);
       if (context instanceof AppCompatActivity) {
          activity = (AppCompatActivity) context;
      }
    }
  //...
    sqLiteHelper = new SQLiteHelper(activity, "CarDB.sqlite", null, 1);




 //...
     btnChoose.setOnClickListener(new View.OnClickListener() {
     @Override
     public void onClick(View view) {
        ActivityCompat.requestPermissions(
              //this change
                activity,
                new String[] {Manifest.permission.READ_EXTERNAL_STORAGE},
                REQUEST_CODE_GALLERY
             );

         }
    });