#android #android-studio
#Android #android-studio
Вопрос:
В моем приложении, над которым я работаю, есть место, где вы можете отменить запрос на пожертвование, поэтому, если они отменят пожертвование, я хочу удалить его из базы данных, но оно не может быть удалено. Также нет никаких шансов, что объекта нет в базе данных, потому что он только что был открыт с экрана запросов ранее. Вот код для функции отмены :
public void cancel(View view){
new AlertDialog.Builder(this)
.setTitle("Are you sure you want to cancel this request?")
.setMessage("It is unchangeable")
.setIcon(android.R.drawable.ic_dialog_alert)
.setCancelable(true)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
ParseQuery<ParseObject> query = ParseQuery.getQuery("ArchivedRequests");
query.whereEqualTo("donorUsername", ParseUser.getCurrentUser().getUsername());
query.whereEqualTo("ngoUsername", ngoUsername);
query.whereEqualTo("requestsDate", date);
query.whereEqualTo("requestTime", time);
query.findInBackground(new FindCallback<ParseObject>() {
@Override
public void done(List<ParseObject> objects, ParseException e) {
if (e == null){
if (objects.size() > 0){
for (ParseObject object : objects){
object.deleteInBackground();
Toast.makeText(DateChangeActivity.this, "Inform your NGO that you have cancelled the request!", Toast.LENGTH_LONG).show();
Intent intent = new Intent(DateChangeActivity.this, DonorChatActivity.class);
intent.putExtra("ngo", ngoUsername);
intent.putExtra("ngoN", ngoName);
intent.putExtra("class", "donor");
startActivity(intent);
}
}
}
}
});
}
})
.setNegativeButton("No", null)
.show();
}
Я надеюсь, вы можете сказать мне, как решить эту проблему. Заранее спасибо.
Комментарии:
1. вы использовали deleteInBackground(), вы использовали что-то, что не работает в фоновом режиме?