2014-11-16 58 views
1

我想刪除我的數據。 我從我的列中獲得「Student_ID」,由Parse中的ID組成。 我不確定問題出在哪裏,當我嘗試時,代碼成功一到兩次,並且多次按下按鈕。也許是因爲它需要等待我的數據庫分析的請求? 我認爲問題出在for循環,它似乎在那裏。 任何人都可以修復它嗎?解析刪除對象

public void deleteStudent(){ 
    ParseQuery<ParseObject> query=ParseQuery.getQuery("Student"); 
    query.whereEqualTo("Student_ID",ID); 
    query.findInBackground(new FindCallback<ParseObject>() { 
     @Override 
     public void done(List<ParseObject> parseObjects, ParseException e) { 
      if(e==null) { 


       for (ParseObject delete : parseObjects) { 
        delete.deleteInBackground(); 
        Toast.makeText(getApplicationContext(), "deleted", Toast.LENGTH_SHORT).show(); 
       } 
      }else{ 
       Toast.makeText(getApplicationContext(), "error in deleting", Toast.LENGTH_SHORT).show(); 
      } 
     } 
    }); 
} 
+0

我不清楚是什麼問題。不刪除? 'ID'總是一樣嗎?如果是這樣,它不會多次刪除它。 – weston

+0

在我嘗試了很多次後,它只能工作一到兩次。我也不確定爲什麼。它將獲得具有唯一性的數據的當前ID。如果它被刪除,它將從解析中刪除。但它只能工作一兩次。 – Joshua

+0

我想我解決了它!我只是添加[ID = student_ID.getText()。toString();] – Joshua

回答

1

只需將此行添加到空白處即可。

ID = student_ID.getText()。toString();

0

解析劑量有一個API來批量刪除,所以保存一個for循環

ParseObject.deleteAllInBackground