         self.completionHandler = completion
 
         self.clipsToBounds = true
-        self.addSubview(createView(labelText, descriptionText: descriptionText, imageName: imageName, buttonText: buttonText, textAlignment: textAlignment))
+        let createdToastView = createView(labelText, descriptionText: descriptionText, imageName: imageName, buttonText: buttonText, textAlignment: textAlignment)
+        self.addSubview(createdToastView)
 
         self.toastView.backgroundColor = backgroundColor
 

            }
        }

        horizontalStackView.snp.makeConstraints { make in
            make.centerX.equalTo(toastView)
            make.centerY.equalTo(toastView)
            make.width.equalTo(toastView.snp.width).offset(-2 * ButtonToastUX.ToastPadding)
            make.bottom.equalTo(toastView.safeArea.bottom)
            make.top.equalTo(toastView.snp.top)
            make.height.equalTo(ButtonToastUX.ToastHeight)
        }

        return toastView
    }

    @objc func buttonPressed(_ gestureRecognizer: UIGestureRecognizer) {
        completionHandler?(true)
        dismiss(true)
    }

    override func showToast(viewController: UIViewController? = nil, delay: DispatchTimeInterval = SimpleToastUX.ToastDelayBefore, duration: DispatchTimeInterval? = SimpleToastUX.ToastDismissAfter, makeConstraints: @escaping (SnapKit.ConstraintMaker) -> Swift.Void) {
        super.showToast(viewController: viewController, delay: delay, duration: duration, makeConstraints: makeConstraints)
    }
}

        }

        horizontalStackView.addArrangedSubview(labelStackView)
        setupPaddedButton(stackView: horizontalStackView, buttonText: buttonText)
        toastView.addSubview(horizontalStackView)

        if textAlignment == .center {
