假设您有这样的具有默认参数的数据类
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)
在这种情况下,没有任何lint错误
但是当我尝试使用默认参数时会发生lint错误:
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。
答案 0 :(得分:2)
这是Android Studio中的一个问题,已在3.1中修复。检查3.1-beta4