2015-10-08 2 views
0

Я загружающий Горячо два разаПри редактировании Spinner Приступает к этому же пункту два раза

  1. Для при вставке детали
  2. Для редактирования тех же деталей

При открытии экрана для Редактор вертушки должен загружать счетчик с выбранным элементом, который выбран при вставке деталей.

теперь я, что я объявил список массивов по всему миру для загрузки счетчика. И в то же время я назначаю элемент выбранного во время вставки.

теперь данные Код: Для загрузки вертушку «Простая загрузка wihile Inesertion»

for (int i = 0; i < result.getPropertyCount(); i++) 
        { 
         namesObject = (SoapObject) result.getProperty(i); 
         valuesListForCtg.add(new MatchIDByString("-- Select Grievance Category --",-1)); 
         for(int j=0; j<namesObject.getPropertyCount(); j++) 
         { 
          Object objectNames=namesObject.getProperty(j); 
          SoapObject soapObjectw = (SoapObject)objectNames;   
          valuesListForCtg.add(new MatchIDByString(soapObjectw.getProperty("Category_Name").toString(),Integer.parseInt(soapObjectw.getProperty("Cat_ID").toString())));           
         } 

        } 

Тот же самый код вертушка выше ид Загрузка в процессе редактирования и код дополнение для присвоения товара как ниже

valuesListForCtg.add(new MatchIDByString(namesObject.getProperty("Category_Name").toString(),Integer.parseInt(namesObject.getProperty("CategoryId").toString()))); 

теперь проблема я столкнулся это отредактированный spinner загружает выбранный элемент, а также назначенный элемент.

Код Spinner

SpnCategory.setOnItemSelectedListener(new OnItemSelectedListener() { 

      @Override 
      public void onItemSelected(AdapterView<?> parent, View view, 
        int position, long id) { 
       try 
       { 

       MatchIDByString s = (MatchIDByString) parent.getItemAtPosition(position); 
       CategoryValue = String.valueOf(s.StringID);      
       CtgName = s.StringItem; 
       IDStatusCtg = Integer.parseInt(CategoryValue);     
       SpnForEditCtg = SpnCategory.getSelectedItemPosition(); 


       if(CategoryValue.equals("-1")) 
       { 
        SpnCategoryType.setEnabled(false); 
        SpnCategoryType.setAdapter(null); 
       }else 
       { 
       if (!CategoryValue.equals("0")) { 
        final boolean chk = isOnline(); 
        if (chk != true) {    
         PUC.InternetServiceNotAvailbale();    
        } 
        else { 
         SpnCategoryType.setEnabled(true); 
        new LoadCategoryTypeSpinner().execute(); 
        } 
       } 
       } 

       }catch(Exception e) 
       { 
        PUC.PleaseTryAgain(); 
       } 
      } 

      @Override 
      public void onNothingSelected(AdapterView<?> parent) { 
       // TODO Auto-generated method stub 

      } 
     }); 

ответ

0

При редактировании детали либо создать новый ArrayList или сбросит предыдущую ArrayList перед добавлением в нее данных. В противном случае он добавит новые данные, но не будет очищать предыдущие данные.

Для лучшего понимания вы можете разместить еще несколько кодов.

+0

Если я очищаю список массивов, то данные, которые я хочу загрузить для spinner, исчезают. затем Как установить выбранный элемент для счетчика, который я хочу установить. И приведенный выше код Только я использую для Loading spinner –

+0

Теперь то, что я получаю, является элементом, который я хочу установить как выбранный элемент, и загружая данные, он также содержит один и тот же элемент. Итак, я получаю 2 одинаковых элемента на одном и том же счетчике –

+0

Вы не поняли. Если вы хотите отобразить только выбранный элемент, добавьте флаг, и если этот элемент выбран, то добавьте только в ArrayList. – Kunu

Смежные вопросы