implement layout as tween and view predicate