gpt4 book ai didi

android - android 上 setBackgroundDrawable 的解决方法?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:53:33 26 4
gpt4 key购买 nike

Android SDK API 级别 16 中的 View 类的 setBackgroundDrawable() 方法现已弃用。

新方法是 setBackground() 但当然它只在 API 16 中可用。

如果我希望我的应用程序与以前的 API 级别兼容,我该如何解决这个问题? (至少 API 14)

目标是消除任何警告,@SupressWarnings 不是我的解决方案。

最佳答案

通常的做法是这样的:

if (android.os.Build.VERSION.SDK_INT >= 16)
setBackground(...);
else
setBackgroundDrawable(...);

另一方面,您可以使用反射:

try {
Method setBackground = View.class.getMethod("setBackground", Drawable.class);
setBackground.invoke(myView, myDrawable);
} catch (NoSuchMethodException e) {
setBackgroundDrawable(myDrawable);
}

IMO 警告总比捕获异常和不必要的反射要好。

关于android - android 上 setBackgroundDrawable 的解决方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13070766/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com