假设您具有带有默认参数的数据类
data class Info(
@DrawableRes
val iconRes: Int = 0,
@StringRes
val stringRes: Int = 0,
@LayoutRes
val layoutRes: Int = 0)
因此您可以像这样创建此数据类
val data = Info(
iconRes = R.drawable.icon,
stringRes = R.string.text,
layoutRes = R.layout.layout)
在这种情况下,没有任何棉绒错误
但是,当我尝试使用默认参数时,会出现棉绒错误:
val data = Info(
//here is expected resource of type drawable error
stringRes = R.string.text
layoutRes = R.layout.layout)
似乎它使用参数中的位置,而不是确切的类型和名称。
我尝试使用像
@param:DrawableRes
这样的显式注释,但结果相同。我能以某种方式解决这个问题吗?我使用最新的Android Studio 3.0。
最佳答案
这是Android Studio中的问题,已在3.1中修复。在3.1-beta4上检查