private static @Nullable Unbinder parseOnCheckedChanged(final Object target, final Method method, View source) { OnCheckedChanged onCheckedChanged = method.getAnnotation(OnCheckedChanged.class); if (onCheckedChanged == null) { return null; } validateMember(method); validateReturnType(method, void.class); final ArgumentTransformer argumentTransformer = createArgumentTransformer(method, ON_CHECKED_CHANGED_TYPES); List<CompoundButton> views = findViews(source, onCheckedChanged.value(), isRequired(method), method.getName(), CompoundButton.class); ViewCollections.set(views, ON_CHECKED_CHANGE, (buttonView, isChecked) -> tryInvoke(method, target, argumentTransformer.transform(buttonView, isChecked))); return new ListenerUnbinder<>(views, ON_CHECKED_CHANGE); }