Cevabı @split ile inşa etmek ...
Cevap harika, ancak düğmenin önceden ayarlanmış özel görüntü ve başlık kenarı eklerine sahip olabileceği gerçeğini görmezden geliyor (örneğin film şeridinde).
Örneğin, görüntünün kabın üstünden ve altından biraz dolgusu olmasını, ancak yine de görüntüyü düğmenin sağ tarafına taşımasını isteyebilirsiniz.
Konsepti bu yöntemle genişlettim: -
- (void) moveImageToRightSide {
[self sizeToFit];
CGFloat titleWidth = self.titleLabel.frame.size.width;
CGFloat imageWidth = self.imageView.frame.size.width;
CGFloat gapWidth = self.frame.size.width - titleWidth - imageWidth;
self.titleEdgeInsets = UIEdgeInsetsMake(self.titleEdgeInsets.top,
-imageWidth + self.titleEdgeInsets.left,
self.titleEdgeInsets.bottom,
imageWidth - self.titleEdgeInsets.right);
self.imageEdgeInsets = UIEdgeInsetsMake(self.imageEdgeInsets.top,
titleWidth + self.imageEdgeInsets.left + gapWidth,
self.imageEdgeInsets.bottom,
-titleWidth + self.imageEdgeInsets.right - gapWidth);
}