1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- //
- // RQUpdatePasswordViewController.m
- // YueXueChe
- //
- // Created by 张嵘 on 2019/1/14.
- // Copyright © 2019 RONG. All rights reserved.
- //
- #import "RQUpdatePasswordViewController.h"
- #import "RQPasswordView.h"
- @interface RQUpdatePasswordViewController ()
- @property (nonatomic, readwrite, strong) RQUpdatePasswordViewModel *viewModel;
- @property (weak, nonatomic) IBOutlet UIView *containerView;
- @property (weak, nonatomic) IBOutlet UIButton *sureBtn;
- @property (strong, readwrite, nonatomic) RQPasswordView *freshPasswordView;
- @end
- @implementation RQUpdatePasswordViewController
- @dynamic viewModel;
- - (void)viewWillAppear:(BOOL)animated{
- [super viewWillAppear:animated];
- [self.freshPasswordView.passwordTextField becomeFirstResponder];
- }
- - (void)viewDidLoad {
- [super viewDidLoad];
- /// 设置
- [self rq_setup];
- /// 子控件
- [self rq_setupSubViews];
- /// 初始化部分数据
- [self rq_configureData];
- }
- #pragma mark - 初始化
- - (void)rq_setup {
- @weakify(self)
- /// 设置contentSize
- [self.containerView mas_makeConstraints:^(MASConstraintMaker *make) {
- make.width.mas_equalTo(RQ_SCREEN_WIDTH);
- make.height.mas_equalTo(RQ_SCREEN_HEIGHT);
- }];
- UIScrollView *scrollView = (UIScrollView *)self.view;
- scrollView.alwaysBounceVertical = YES;
- scrollView.showsHorizontalScrollIndicator = NO;
- scrollView.showsVerticalScrollIndicator = NO;
-
- /// 适配 iOS 11
- RQAdjustsScrollViewInsets_Never(scrollView);
- }
- #pragma mark - 设置子控件
- - (void)rq_setupSubViews {
- @weakify(self)
- /// 新密码
- RQPasswordView *freshPasswordView = [RQPasswordView passwordView];
- self.freshPasswordView = freshPasswordView;
- [self.containerView addSubview:freshPasswordView];
-
- /// 布局
- [freshPasswordView mas_makeConstraints:^(MASConstraintMaker *make) {
- @strongify(self)
- make.top.mas_equalTo(self.containerView.mas_top).mas_offset((RQ_APPLICATION_NAV_BAR_HEIGHT + RQ_APPLICATION_STATUS_BAR_HEIGHT));
- make.left.mas_equalTo(self.containerView).mas_offset(16.f);
- make.right.mas_equalTo(self.containerView).mas_offset(-16.f);
- make.height.mas_offset(64.f);
- }];
-
- [self.sureBtn mas_remakeConstraints:^(MASConstraintMaker *make) {
- make.top.mas_equalTo(freshPasswordView.mas_bottom).mas_offset(48.f);
- }];
- }
- #pragma mark - 初始化部分数据
- - (void)rq_configureData {
- };
- #pragma mark - Override
- - (void)bindViewModel {
- [super bindViewModel];
- RAC(self.viewModel , freshPassword) = [RACSignal merge:@[RACObserve(self.freshPasswordView.passwordTextField, text),self.freshPasswordView.passwordTextField.rac_textSignal]];
-
- RAC(self.sureBtn , enabled) = self.viewModel.validSureSignal;
- }
- - (IBAction)sureBtnDidClicked:(id)sender {
- [self.viewModel.sureCommand execute:nil];
- }
- @end
|