Update 3:
This works:
DOTween.To(() => _childWidget[0].color, x => _childWidget[0].color = x, Color.gray, 1).SetAs(_tweenParams);
DOTween.To(() => _childWidget[1].color, x => _childWidget[1].color = x, Color.gray, 1).SetAs(_tweenParams);
DOTween.To(() => _childWidget[2].color, x => _childWidget[2].color = x, Color.gray, 1).SetAs(_tweenParams);
This doesnt:
for (int i = 0; i < _childWidget.Length; i++)
DOTween.To(() => _childWidget[i].color, x => _childWidget[i].color = x, Color.gray, 1).SetAs(_tweenParams);
I don't even understand how that could possibly be even a bug... hahah how is it possible that just because its inside a loop it doesnt work? =(
Anyways, I think enough of my spam now, but please, if anyone has a clue, let me know!