public static void InsertArrangedSubviews(this UIStackView stackView, int startPosition = 0, params UIView[] views) { if (startPosition < 0) { throw new ArgumentOutOfRangeException(nameof(startPosition), "Index cannot be negative!"); } if (startPosition == 0) { stackView.AddArrangedSubviews(views); return; } for (var i = 0; i < views.Length; i++) { stackView.InsertArrangedSubview(views[i], (nuint)(startPosition + i)); } }