Files
keyboard/keyBoard/Class/Common/V/KBMoneyBtn.m
2025-11-17 14:53:23 +08:00

69 lines
1.8 KiB
Objective-C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//
// KBMoneyBtn.m
// keyBoard
//
// Created by Mac on 2025/11/17.
//
#import "KBMoneyBtn.h"
#import "UIColor+Extension.h"
@implementation KBMoneyBtn
- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self) {
[self kb_setupUI];
}
return self;
}
- (instancetype)initWithCoder:(NSCoder *)coder {
self = [super initWithCoder:coder];
if (self) {
[self kb_setupUI];
}
return self;
}
- (void)kb_setupUI {
// 背景:#EDFFFD透明度 0.72
// self.backgroundColor = [UIColor colorWithHex:0xEDFFFD alpha:0.72];
self.backgroundColor = [UIColor colorWithHex:0xEDFFFD];
// 文字样式:颜色 0x02BEAC数字展示用稍大一点的字号
[self setTitleColor:[UIColor colorWithHex:0x02BEAC] forState:UIControlStateNormal];
self.titleLabel.font = [UIFont systemFontOfSize:16 weight:UIFontWeightSemibold];
// 左侧金币图标
UIImage *icon = [UIImage imageNamed:@"shop_jbsmall_icon"];
if (icon) {
[self setImage:icon forState:UIControlStateNormal];
}
// 内容靠左,预留左右内边距
self.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
self.contentEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 10);
// 图片与文字间距 15通过 imageEdgeInsets / titleEdgeInsets 调整
CGFloat spacing = 5.0;
self.imageEdgeInsets = UIEdgeInsetsMake(0, -spacing / 2.0, 0, spacing / 2.0);
self.titleEdgeInsets = UIEdgeInsetsMake(0, spacing / 2.0, 0, -spacing / 2.0);
// 高亮时不要变暗太多
self.adjustsImageWhenHighlighted = YES;
}
- (void)layoutSubviews {
[super layoutSubviews];
CGFloat h = CGRectGetHeight(self.bounds);
if (h <= 0) { return; }
// 胶囊圆角
self.layer.cornerRadius = h / 2.0;
self.clipsToBounds = YES;
}
@end