2017-02-25 87 views
-1

我得到數據庫條目並將它們顯示在編輯文本中。我想改變它並更新它。但即使我能夠改變,當我嘗試從EditText獲取文本時,它將返回其舊值而不是更新值。EditText返回舊值而不是更新值

private void getServicesFromLayout(View view){ 

     ........... 
      if(checkDatabase() == null){ 
       try{ 
        companyNo = Integer.parseInt(mCompanyNumber.getText().toString()); 
        seasonNo = Integer.parseInt(mPeriodNumber.getText().toString()); 
        servicePath = mServicePath.getText().toString(); 
       }catch (Exception e){ 
        e.printStackTrace(); 
       } 
       addNewService(servicePath,companyNo,seasonNo); 
      }else{ 
       try{ 
        **companyNo = Integer.parseInt(mCompanyNumber.getEditableText().toString()); 
        seasonNo = Integer.parseInt(mPeriodNumber.getText().toString()); 
        servicePath = mServicePath.getText().toString();** 
       }catch (Exception e){ 
        e.printStackTrace(); 
       } 
       int result = updateDatabase(servicePath ,companyNo ,seasonNo ,getEntryID()); 
       Toast toast = Toast.makeText(globalContext,String.valueOf(result),Toast.LENGTH_SHORT); 
       toast.setGravity(Gravity.CENTER, 0, 0); 
       toast.show(); 
      } 


     } 


    } 

在這裏,我檢查dataabase如果它的空我加入,如果它不是空我試圖更新現有的一個新的服務。但我無法從edittext獲得新的價值。它返回舊值

mSaveConnectionInfo.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       try{ 
        displayLatestEntry(getLatestServiceToDisplay()); 
        if(isTestOk){ 
         **getServicesFromLayout(v);** 
         isTestButtonClicked = 0; 

這就是所謂的...當你更新從編輯文本的文本

+0

編輯文本中的值是從數據庫還是從用戶設置的? –

+0

它從數據庫中設置 –

+1

請編輯您的問題,以發佈[重現您所問的問題的最小代碼](http://stackoverflow.com/help/mcve)。無論如何,沒有難過的感覺,並歡迎來到StackOverflow :) – koceeng

回答

0

更新您的數據庫條目。

+0

我正在更新它,但我無法從EditText獲得新值。 –

+0

你可以在這裏更新你的代碼嗎? –