如何在adpater中将onactivityresult与startintentsenderforresult一起使用

t8e9dugd  于 2021-09-13  发布在  Java
关注(0)|答案(0)|浏览(327)

对于我的应用程序,我想创建一个删除功能,由于android 11,我们必须创建一个挂起的意图等。。。
我创建了我的意图和windows显示,但现在我想使用activityresult,但我不知道如何使用。我的功能在我的adpater中:

  1. private void deleteFile(int p, View view){
  2. AlertDialog.Builder builder = new AlertDialog.Builder(context);
  3. builder.setTitle("Supprimer ?").setMessage(videoFolder.get(p).getTitle()).setNegativeButton("Annuler", (dialog, which) -> {
  4. }).setPositiveButton("Oui", (dialog, which) -> {
  5. ArrayList<Uri> fichiers = new ArrayList<>();
  6. Uri contentUri = ContentUris.withAppendedId(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, Long.parseLong(videoFolder.get(p).getId()));
  7. File file = new File(videoFolder.get(p).getPath());
  8. fichiers.add(contentUri);
  9. if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
  10. PendingIntent demande = MediaStore.createDeleteRequest(context.getContentResolver(), fichiers);
  11. try {
  12. ((Activity) context).startIntentSenderForResult(demande.getIntentSender(),123,new Intent(), 0,0,0);
  13. } catch (IntentSender.SendIntentException e) {
  14. e.printStackTrace();
  15. }
  16. }else{
  17. boolean deleted = file.delete();
  18. if (deleted){
  19. context.getApplicationContext().getContentResolver().delete(contentUri, null, null);
  20. videoFolder.remove(p);
  21. notifyItemRemoved(p);
  22. notifyItemRangeChanged(p,videoFolder.size());
  23. Snackbar.make(view, "Fichier supprimé avec succès", Snackbar.LENGTH_SHORT).show();
  24. }else{
  25. Snackbar.make(view, "Erreur, le fichier n'a pas été supprimé", Snackbar.LENGTH_SHORT).show();
  26. }
  27. }
  28. }).show();
  29. }
  30. And I tried to add this in my MainActivity class :
  31. @Override
  32. protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  33. super.onActivityResult(requestCode, resultCode, data);
  34. }

但它不起作用。。。如果有人能帮我,我就迷路了!

我的代码:https://textup.fr/570657bd
谢谢

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题