我在我的android版本中收到了这些警告。
Warning:(19, 9) Attribute `layout_marginVertical` is only used in API level 26 and higher (current min is 24)
Warning:(20, 9) Attribute `layout_marginHorizontal` is only used in API level 26 and higher (current min is 24)
显然,我们的应用程序布局使用了API级别26中引入的layout_marginVertical
和layout_marginHorizontal
属性。警告使得听起来好像这些属性不会起作用24级设备,但确实它们工作得很好。我想了解为什么我会收到这些警告,尽管看似没有错。
一个明显的解决方案是使用" longhand":marginTop
和marginBottom
代替marginVertical
,但我希望继续使用这些"短"参数如果可能,以提高可读性并减少重复。
这些属性是否未记入第24级?或者在游戏中是否存在某种向后兼容性?如果是这样,为什么要警告?
我们正在使用:
<uses-sdk
android:minSdkVersion="24"
android:targetSdkVersion="26" />
更新:设置targetSdkVersion="24"
似乎可以修复警告,并且所需的边距继续有效。这解决了我当前的问题,但是我对于为什么26级功能在24级工作以及为什么目标26级会引起警告感到困惑。如果我想要达到26级,我该怎么办?