gpt4 book ai didi

java - Build.version < 16 的 setBackground 和 getBackground 方法

转载 作者:行者123 更新时间:2023-12-01 23:38:16 24 4
gpt4 key购买 nike

我在使用 getBackground()setBackground() 方法时遇到问题。我设计了一个应用程序,但现在我发现我没有检查哪个版本是用户android系统(我是android初学者 - 很好的教训)。

我的应用程序正在Build.version > 15上运行,因为该版本中引入了上述方法。

我想使用版本 16 之前存在的类似方法。有什么想法吗?

最佳答案

getBackground()方法自 API 级别 1 以来就已存在,因此这应该不是问题。仅setBackground(Drawable background)从 API 级别 16 开始引入,因此可能会在旧平台上引起问题。

您的替代方案是:

  1. setBackgroundColor(int color)
  2. setBackgroundDrawable(Drawable background)
  3. setBackgroundResource(int resid)

在这些方法中,第二个方法自 API 级别 16 起已被弃用,因为它已替换为您当前使用的 setBackground(Drawable background)。但是,如果您查看该方法的实际实现,您将看到以下内容:

public void setBackground(Drawable background) {
//noinspection deprecation
setBackgroundDrawable(background);
}

因此,此时它所做的就是将调用委托(delegate)给已弃用的 setBackgroundDrawable() 方法。因此,如果您想要快速修复,只需更改代码以使用该代码即可。

关于java - Build.version < 16 的 setBackground 和 getBackground 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18325955/

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