作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要屏幕的宽度。但是最近发现安卓defaultDisplay
不推荐使用以下消息:
默认显示的 setter/getter :显示!已弃用。在 Java 中已弃用
代码:
val displayMetrics = DisplayMetrics()
windowManager.defaultDisplay.getMetrics(displayMetrics)
return displayMetrics.widthPixels
请提出替代方案。
最佳答案
defaultDisplay
在 API 级别 30 (Android R) 及更高版本中被标记为已弃用。
这意味着如果您的最低 SDK 配置低于 API 级别 30,您应该同时使用旧的弃用代码和新的推荐代码实现。
正确解决问题后,您可以使用 @Suppress("DEPRECATION") 来抑制警告
示例:Kotlin 解决方案
val outMetrics = DisplayMetrics()
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.R) {
val display = activity.display
display?.getRealMetrics(outMetrics)
} else {
@Suppress("DEPRECATION")
val display = activity.windowManager.defaultDisplay
@Suppress("DEPRECATION")
display.getMetrics(outMetrics)
}
关于android - 不推荐使用 defaultDisplay : Display! 的 Getter。在 Java 中已弃用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63276134/
我正在开发 Xamarin Android 应用程序,该应用程序大部分在纵向模式下运行。但是,现在我们正在添加这样的功能,如果用户旋转设备,他们会在横向模式下获得另一个 View 。 我的问题是,当我
在模拟器中运行项目时,启动后崩溃: Crash: 'NSInternalInconsistencyException', reason: 'Device , Booted) is available
我需要屏幕的宽度。但是最近发现安卓defaultDisplay不推荐使用以下消息: 默认显示的 setter/getter :显示!已弃用。在 Java 中已弃用 代码: val displayMet
我是一名优秀的程序员,十分优秀!