protected override void UpdateItemSpacing() { if (ItemsLayout == null) { return; } if (_itemDecoration != null) { RemoveItemDecoration(_itemDecoration); } _itemDecoration = CreateSpacingDecoration(ItemsLayout); AddItemDecoration(_itemDecoration); var adapter = GetAdapter(); if (adapter != null) { adapter.NotifyItemChanged(_oldPosition); Carousel.ScrollTo(_oldPosition, position: Xamarin.Forms.ScrollToPosition.Center); } base.UpdateItemSpacing(); }