UIButton+Layout.m 865 B

123456789101112131415161718192021222324252627
  1. //
  2. // UIButton+Layout.m
  3. // FileManager
  4. //
  5. // Created by on 2025/8/12.
  6. //
  7. #import "UIButton+Layout.h"
  8. @implementation UIButton (Layout)
  9. - (void)layoutImageTopSpace:(CGFloat)space {
  10. NSString * titleString = self.currentTitle;
  11. CGSize size = [titleString sizeWithAttributes:@{NSFontAttributeName:self.titleLabel.font}];
  12. CGFloat titleWidth = size.width;
  13. UIImage * btnImage = self.currentImage;// 11*6
  14. CGFloat imageWidth = btnImage.size.width;
  15. CGFloat imageHeight = btnImage.size.height;
  16. CGFloat titleHeight = size.height;
  17. [self setImageEdgeInsets:UIEdgeInsetsMake(-(imageHeight*0.5 + space*0.5), titleWidth*0.5, imageHeight*0.5 + space*0.5, -titleWidth*0.5)];
  18. [self setTitleEdgeInsets:UIEdgeInsetsMake(titleHeight*0.5 + space*0.5, -imageWidth*0.5, -(titleHeight*0.5 + space*0.5), imageWidth*0.5)];
  19. }
  20. @end