2012-12-21 79 views
0
public boolean saveTheUpdate(int position) 
    { 
     System.out.println("In update Save Method"); 
     String strOut=objEditText.getText().toString(); 
     if(strOut !=null && strOut.length() !=0 && arrlstCo_ordinate.size() !=0) 
     { 
      mapDefect.put(objEditText.getId(),strOut); 
      Log.d("Err", "Map Size :"+mapDefect.size() +"Arr List Size :"+arrlstCo_ordinate.size()); 
      db.updateDefectDescription(arrlstCo_ordinate, mapDefect,position); 
      Toast.makeText(FragmentActivity.this, "Defect updated", Toast.LENGTH_SHORT).show(); 
      count=1; 
      removeLocalView(); 
      fechCoordinate(); 
      addViewEditText(); 
      return true; 
     }else 
     { 
      Toast.makeText(FragmentActivity.this, "Please log the defect before saving", Toast.LENGTH_SHORT).show(); 
      return false; 
     }  
    } 

因此,我打開了EditText。其中的數據存儲在SortedMap - mapDefect中。這稍後用於插入數據庫。但是,在隨機時間String strOut=objEditText.getText().toString();不起作用。EditText - 無法取值

實際上有很多EditTexts。它從錯誤的EditText獲取信息,即使它們不可見。數據將從EditText中挑選,該EditText非常可見。它有時可以正常工作,有時它不會 - 它有時會提取正確的EditText,有時候不會。

+0

有你在的ID初始化的EditText。 –

+0

邏輯錯誤。儘管有些視圖不可見,但這意味着你不能使用它們的值。 –

+0

請用你的問題更新到:1)'saveTheUpdate(int position)'中的'position'是什麼? 2)你如何設置'objEditText'? – ariefbayu

回答

0
if(!strOut.equalsIgnoreCase("")&& strOut.length() !=0 && arrlstCo_ordinate.size() !=0) 
     { 

     } 

更換

if(strOut !=null && strOut.length() >0 && arrlstCo_ordinate.size() >0) 
     { 

     } 
+0

它不工作。同樣的事情發生。 –