 		self.alpha = 0
 		self.translatesAutoresizingMaskIntoConstraints = false
 		parentView.addSubview(self)
-		parentView.addConstraint(with: self, attribute: .width, relatedBy: .equal)
-		parentView.addConstraint(with: self, attribute: .height, relatedBy: .equal)
-		parentView.addConstraint(with: self, attribute: .centerX, relatedBy: .equal)
-		parentView.addConstraint(with: self, attribute: .centerY, relatedBy: .equal)
+		parentView.addConstraints(nil, "|[self]|", metrics: nil, views: ["self" : self])
 
 		if let ignore = SimpleLoading.Config.ignoreInteractionEvents, ignore {
 			UIApplication.shared.beginIgnoringInteractionEvents()

			view.addConstraints("H", "|-(padding)-[label]-(spacing)-[activity]-(padding)-|", metrics: metrics, views: ["activity":activity, "label":label])
			metrics = ["padding": SimpleLoading.Config.verticalPadding]
			view.addConstraints("V", "|-(padding)-[activity]-(padding)-|", metrics: metrics, views: ["activity":activity])
			view.addConstraint(with: label, attribute: .centerY, relatedBy: .equal)
			
		case .textBottom(let text):
			// self -> view -> activity -- label

			view.addConstraints("H", "|-(padding)-[activity]-(spacing)-[label]-(padding)-|", metrics: metrics, views: ["activity":activity, "label":label])
			metrics = ["padding": SimpleLoading.Config.verticalPadding]
			view.addConstraints("V", "|-(padding)-[activity]-(padding)-|", metrics: metrics, views: ["activity":activity])
			view.addConstraint(with: label, attribute: .centerY)

		case .textLeft(let text):
			// self -> view -> label | activity
