[英]How to delete values in array type object in parse.com class
我在解析時有一個名為“ UserData”的類,其中包含列名“ usersports”,它是數組類型,我在該數組中成功添加了值,現在每當插入新條目時,我都必須刪除所有值
login_data.addAllUnique("usersports",selected_sport_list);
其中selected_sport_list
是我的包含運動的數組列表,而login_data
是解析對象
private class SaveUserDataToParse extends AsyncTask<String, String, String> {
private Context context;
private ProgressDialog progressDialog;
public SaveUserDataToParse(Context context) {
this.context = context;
}
@Override
protected void onPreExecute() {
progressDialog = new ProgressDialog(context);
progressDialog.setMessage("Loading...");
progressDialog.show();
}
@Override
protected String doInBackground(String... params) {
try {
//Do your loading here
ParseQuery<ParseObject> query = ParseQuery.getQuery(Sportapp.USERDATA);
query.whereEqualTo(Sportapp.USER_GOOGLE_ID, google_id_from_preference.trim());
ParseObject login_data = query.getFirst();
if (login_data != null) {
login_data.put(Sportapp.USER_CITY, User_city);
login_data.put(Sportapp.USER_STATE, User_state);
login_data.put(Sportapp.USER_COUNTRY, User_country);
if(!selected_sport_list.isEmpty()){
login_data.addAllUnique(Sportapp.USER_SPORTS,selected_sport_list);
//login_data.removeAll(Sportapp.USER_SPORTS,selected_sport_list);
}
login_data.saveInBackground();
}
} catch (ParseException e) {
e.printStackTrace();
}
return "finish";
}
@Override
protected void onPostExecute(String result) {
progressDialog.dismiss();
Toast.makeText(getApplicationContext(), "Your Data has been successfully Saved", Toast.LENGTH_SHORT).show();
}
}
由於卡住了,使用上面的代碼,我能夠在parse數組中添加數據。 但是執行此代碼后,我必須在解析時刪除數組中包含的數據。
刪除代碼中的這一行:-login_data.addAllUnique(Sportapp.USER_SPORTS,selected_sport_list);
並添加以下內容:-login_data.put(Sportapp.USER_SPORTS,selected_sport_list);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.