Исходный код Android предполагает, что findViewById
может возвращать ноль:
@Nullable
public final <T extends View> T findViewById(@IdRes int id) {
if (id == NO_ID) {
return null;
}
return findViewTraversal(id);
}
Но при вызове из Kotlin компилятор не жалуется на обнуляемость при использовании этого способа:
private lateinit var swipeRefreshLayout: SwipeRefreshLayout
...
swipeRefreshLayout = view.findViewById(R.id.swiperefresh)
Как я могу догадаться, эта аннотация Nullable
взята из Android pacakge, а также есть другие аннотации Nullable
, которые Котлин хорошо распознает. Это проблема, связанная с Kotlin / IDE, или команда Android должна что-то с этим сделать?