2014-09-24 70 views
0

我有一個名爲「UserData」的解析類,其中包含列名「usersports」,它是一個數組類型,我在該數組中成功添加了值,現在我必須刪除所有的值,每當我插入一個新條目如何刪除parse.com中的數組類型對象中的值

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(); 
      } 
     } 

因爲我卡住了,有上面的代碼我能夠在解析數組中添加數據。 但是執行這段代碼我不得不在解析時刪除包含數組的數據。

+0

請在此處貼上您的代碼。 – 2014-09-24 12:12:30

+0

我剛剛編輯我的帖子 – User413 2014-09-24 12:29:28

回答

2

在您的代碼中刪除此行: - login_data.addAllUnique(Sportapp.USER_SPORTS,selected_sport_list);

並添加以下內容: - login_data.put(Sportapp.USER_SPORTS,selected_sport_list);

+0

好吧,我明白了你的觀點,但我必須存儲像[[籃球],「板球」,「曲棍球」]字符串數組,因爲我需要排序/搜索這個字符串,需要使用login_data.addAllUnique(key,value); – User413 2014-09-25 07:16:42

+0

你可以在put方法中放入字符串數組。如果你想排序/搜索,那麼你應該使用另一種方法來排序/搜索。 – 2014-09-25 07:45:42

+0

謝謝@rajat我試過這個,它一切正常。 非常感謝 – User413 2014-09-25 08:55:12

相關問題