這是我的處理方法已過時:Android處理方法已過時
int layoutDirection ;
if (getContext().getApplicationInfo().targetSdkVersion > Build.VERSION_CODES.JELLY_BEAN_MR1) {
layoutDirection = getLayoutDirection();
}else {
layoutDirection = getResolvedLayoutDirection();
}
的問題是,getResolvedLayoutDirection()
已經在JELLY_BEAN_MR1及以上的去除。所以,因爲我的項目的目標是API 20,所以找不到方法,並且出現錯誤。
如果我把它愚蠢:
int layoutDirection = getLayoutDirection();
項目編譯和運行,但我仍然得到一個錯誤添加無論是TargetApi或SuppressLint註解。 getLayoutDirection()文檔有:
出於兼容性考慮,如果 API版本比{@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}下這將返回{@link #LAYOUT_DIRECTION_LTR}。
所以抑制lint應該沒問題。
我應該抑制lint錯誤還是以某種方式修復它(可能使getResolvedLayoutDirection()可訪問)?