2014-06-10 65 views
2

我想用發現錯誤的Eclipse插件來測試我的應用程序插件未檢查/未經證實的演員和我得到這樣的錯誤的:從android.view.View發現錯誤日食從android.view

未檢查/未經證實的投地android.widget.EditText返回值

和部分代碼是這樣的:

((EditText) findViewById(R.id.EditText)).setEnabled(true); 

那麼,什麼是錯誤? 我試着寫這樣的:

if(findViewById(R.id.otherEditText) instanceof EditText) 
    ((EditText) findViewById(R.id.otherEditText)).setEnabled(true); 

但沒有結果,同樣的錯誤時,會出現

+0

感謝它的工作。 發表您的評論作爲答覆我會接受它! – GigantoMK

回答

3

的問題是,FindBugs的不能肯定的是,方法調用給出了相同的結果每次。所以它必須假設結果在測試和演員發生的地方是不同的。

爲了將此信息提供給FindBugs的,試試這個:

  • findViewById(R.id.otherEditText)結果分配給一個臨時變量沒有鑄造。
  • 然後執行if並使用變量進行強制轉換。

這樣,FindBugs可以看到檢查的值和使用的值是相同的。