2016年1月2日 星期六

「Android」Java.lang.NoSuchMethodError: android.widget.TextView.setBackground

近日工作上遇到了這個問題

Java.lang.NoSuchMethodError: android.widget.TextView.setBackground

幸好客戶有回報錯誤,在Google Play 後台可以看到錯誤訊息,

檢查了客戶的Android版本為4.0.3


上網查詢後,setBackground是API 16以後才有的。


API Level 可以參考下圖
























原因出在setBackground只能適用於 Android 4.1(含)以後的版本,4.0~4.0.4並沒有

這一個Method,必須用舊的Method setBackgroundDrawable 


int sdk = android.os.Build.VERSION.SDK_INT;
if(sdk < android.os.Build.VERSION_CODES.JELLY_BEAN) {
    setBackgroundDrawable();
} else {
    setBackground();
}



參考資料:


沒有留言:

張貼留言