简版金额输入框

简版金额输入框 AUAmountEditTextField 可与金额显示组件 AUAmountLabelText 配套使用。

AUAmountEditTextField

AUAmountEditTextField 目前不含输入内容的校验与预处理逻辑,这些功能在业务中可通过设置 delegate 实现。

效果图

接口说明

NS_ASSUME_NONNULL_BEGIN

@interface AUAmountEditTextField : UITextField

@end


/**
  带“¥”符号和下划线的简版金额输入组件。
  输入内容字号大小会随内容长度缩放
 */
@interface AUAmountEditText : UIView


/**
    金额输入框,可按需修改属性或设置 delegate.
    clear 事件发生时,会调用 [amountTextField sendActionsForControlEvents:UIControlEventEditingChanged]
 */
@property(nonatomic,strong) AUAmountEditTextField *amountTextField;


/**
 开放给 AUAmountLabelText,用于 inputText 长度变化时调整字号使用。
 业务方请勿使用。

 @param textLength inputText 长度
 @return UIFont
 */
+ (UIFont *)resetFontSize:(NSUInteger) textLength;

@end

NS_ASSUME_NONNULL_END

// amountTextField 初始化设置:
_amountTextField.textColor = RGB(0x000000);
_amountTextField.backgroundColor = [UIColor clearColor];
_amountTextField.font = [UIFont fontWithCustomName:kAmountNumberFontName size:45.0];
_amountTextField.contentVerticalAlignment= UIControlContentVerticalAlignmentCenter;
_amountTextField.inputView = [AUNumKeyboards sharedKeyboardWithMode:AUNumKeyboardModeCommon];
_amountTextField.rightViewMode = UITextFieldViewModeWhileEditing;
_amountTextField.rightView = self.rightView;//clearButton 使用 rightView 实现

代码示例

field = [[AUAmountEditText alloc] init];//默认屏幕等宽,高度 70
field.amountTextField.delegate = self;
[view addSubview:field];

AUAmountLabelText

AUAmountLabelText 是与 AUAmountEditTextField 配套使用的金额显示组件。

效果图

接口说明

NS_ASSUME_NONNULL_BEGIN

/**
 AUAmountEditTextField 配套使用的金额显示组件
 */
@interface AUAmountLabelText : UIView

@property (nonatomic, copy) NSString *amountText;//金额数字,不带羊角符号,例如:"80.01"

@end

NS_ASSUME_NONNULL_END

代码示例

label = [[AUAmountLabelText alloc] init];//默认屏幕等宽,高度 64px
label.amountText = @"1,345.0";
[view addSubview:label];