我想设置 View 的背景可绘制。 (据我所知)有两种方法:setBackgroundsetBackgroundDrawable

当我使用setBackground时,它说它已添加到API级别16中,但是我项目的最小SDK版本是7。我认为它不能在16以下的任何版本上工作,对吗?但是当我使用setBackgroundDrawable时,它说它已被弃用。

我应该用什么?

最佳答案

它已被弃用,但仍然可以使用,因此您可以使用它。但是,如果您想完全正确,则仅是出于完整性考虑...您可以执行以下操作:

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

为此,您需要将buildTarget api设置为16并将min build设置为7或类似的值。

07-27 17:13