Files
yinmeng-ios/xplan-ios/Base/UI/SendGiftView/View/XPGiftBarView.m
2021-11-19 14:13:08 +08:00

201 lines
6.1 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.

//
// XPGiftBottomView.m
// xplan-ios
//
// Created by 冯硕 on 2021/11/9.
//
#import "XPGiftBarView.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "ThemeColor+SendGift.h"
#import "UIImage+Utils.h"
@interface XPGiftBarView ()
///余额
@property (nonatomic,strong) UILabel *balanceLabel;
///
@property (nonatomic,strong) UIStackView *rechargeStackView;
///充值
@property (nonatomic,strong) UILabel *rechargeLabel;
///去充值
@property (nonatomic,strong) UIImageView *rechageImageView;
///
@property (nonatomic,strong) UIView *sendOperationView;
///个数
@property (nonatomic,strong) UILabel *countLabel;
///箭头
@property (nonatomic,strong) UIButton *arrowButton;
///赠送
@property (nonatomic,strong) UIButton *sendGiftButton;
@end
@implementation XPGiftBarView
- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self) {
[self initSubViews];
[self initSubViewConstraints];
}
return self;
}
#pragma mark - Response
- (void)sendButtonAction:(UIButton *)sender {
}
- (void)rechargeButtonAction:(UIButton *)sender {
}
- (void)arrowButtonAction:(UIButton *)sender {
}
#pragma mark - Private Method
- (void)initSubViews {
self.backgroundColor= [UIColor clearColor];
[self addSubview:self.balanceLabel];
[self addSubview:self.rechargeStackView];
[self addSubview:self.sendOperationView];
[self.rechargeStackView addArrangedSubview:self.rechargeLabel];
[self.rechargeStackView addArrangedSubview:self.rechageImageView];
[self.sendOperationView addSubview:self.countLabel];
[self.sendOperationView addSubview:self.arrowButton];
[self.sendOperationView addSubview:self.sendGiftButton];
}
- (void)initSubViewConstraints {
[self mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(45);
}];
[self.balanceLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(15);
make.centerY.mas_equalTo(self.sendOperationView);
}];
[self.rechargeStackView mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerY.mas_equalTo(self.sendOperationView);
make.left.mas_equalTo(self.balanceLabel.mas_right).offset(12);
}];
[self.sendOperationView mas_makeConstraints:^(MASConstraintMaker *make) {
make.right.mas_equalTo(self).offset(-15);
make.bottom.mas_equalTo(-11);
make.height.mas_equalTo(30);
make.left.mas_equalTo(self.countLabel.mas_left).offset(-13);
}];
[self.countLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerY.mas_equalTo(self.sendGiftButton);
make.right.mas_equalTo(self.arrowButton.mas_left).offset(-10);
}];
[self.arrowButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(10, 10));
make.centerY.mas_equalTo(self.sendGiftButton);
make.right.mas_equalTo(self.sendGiftButton.mas_left).offset(-10);
}];
[self.sendGiftButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(67, 30));
make.right.centerY.mas_equalTo(self.sendOperationView);
}];
}
#pragma mark - Getters And Setters
- (UILabel *)balanceLabel {
if (!_balanceLabel) {
_balanceLabel = [[UILabel alloc] init];
_balanceLabel.textColor = [ThemeColor mainTextColor];
_balanceLabel.font = [UIFont systemFontOfSize:13];
_balanceLabel.text = @"余额10000";
}
return _balanceLabel;
}
- (UIStackView *)rechargeStackView {
if (!_rechargeStackView) {
_rechargeStackView = [[UIStackView alloc] init];
_rechargeStackView.axis = UILayoutConstraintAxisHorizontal;
_rechargeStackView.distribution = UIStackViewDistributionFill;
_rechargeStackView.alignment = UIStackViewAlignmentCenter;
_rechargeStackView.spacing = 5;
}
return _rechargeStackView;
}
- (UILabel *)rechargeLabel {
if (!_rechargeLabel) {
_rechargeLabel = [[UILabel alloc] init];
_rechargeLabel.text = @"充值";
_rechargeLabel.font = [UIFont systemFontOfSize:13];
_rechargeLabel.textColor = [ThemeColor giftRechargeColor];
}
return _rechargeLabel;
}
- (UIImageView *)rechageImageView {
if (!_rechageImageView) {
_rechageImageView = [[UIImageView alloc] init];
_rechageImageView.userInteractionEnabled = YES;
_rechageImageView.image = [UIImage imageNamed:@"gift_bar_recharge_arrow"];
}
return _rechageImageView;
}
- (UIView *)sendOperationView {
if (!_sendOperationView) {
_sendOperationView = [[UIView alloc] init];
_sendOperationView.layer.masksToBounds = YES;
_sendOperationView.layer.cornerRadius = 15;
_sendOperationView.layer.borderColor = [ThemeColor appMainColor].CGColor;
_sendOperationView.layer.borderWidth = 1;
}
return _sendOperationView;
}
- (UILabel *)countLabel {
if (!_countLabel) {
_countLabel = [[UILabel alloc] init];
_countLabel.textAlignment = NSTextAlignmentCenter;
_countLabel.textColor = [ThemeColor mainTextColor];
_countLabel.text = @"1";
_countLabel.font = [UIFont systemFontOfSize:13];
}
return _countLabel;
}
- (UIButton *)arrowButton {
if (!_arrowButton) {
_arrowButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_arrowButton setImage:[UIImage imageNamed:@"gift_bar_count_arrow"] forState:UIControlStateNormal];
[_arrowButton setImage:[UIImage imageNamed:@"gift_bar_count_up_arrow"] forState:UIControlStateSelected];
[_arrowButton addTarget:self action:@selector(arrowButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _arrowButton;
}
- (UIButton *)sendGiftButton {
if (!_sendGiftButton) {
_sendGiftButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_sendGiftButton setTitle:@"赠送" forState:UIControlStateNormal];
[_sendGiftButton setTitleColor:[ThemeColor mainTextColor] forState:UIControlStateNormal];
[_sendGiftButton setBackgroundImage:[UIImage gradientColorImageFromColors:@[[ThemeColor confirmButtonGradientStartColor], [ThemeColor confirmButtonGradientEndColor]] gradientType:GradientTypeLeftToRight imgSize:CGSizeMake(10, 10)] forState:UIControlStateNormal];
_sendGiftButton.titleLabel.font = [UIFont systemFontOfSize:13];
_sendGiftButton.layer.masksToBounds = YES;
_sendGiftButton.layer.cornerRadius = 15;
[_sendGiftButton addTarget:self action:@selector(sendButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _sendGiftButton;
}
@end