// // YMWebArticleViewController.m // MSYOUPAI // // Created by YoMi on 2024/2/15. // Copyright © 2024 MS. All rights reserved. // #import "YMWebArticleViewController.h" #import "YMWebArticleView.h" @interface YMWebArticleViewController () /// 网页文章VM @property (nonatomic, strong) YMWebArticleViewModel *viewModel; /// 网页文章视图 @property (nonatomic, strong) YMWebArticleView *webArticleView; @end @implementation YMWebArticleViewController @dynamic viewModel; - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. } - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; if (self.viewModel.webViewLoadTitle == YES && OCStringIsEmpty(self.viewModel.webViewTitle)) { //webView已获取title,但返回时无法获取title,可能是内存不足原因造成,此时需重新加载同时避免第一次进入时重新加载 [self.viewModel.refreshUISubject sendNext:@(YMRefreshUI)]; } } - (void)viewWillDisappear:(BOOL)animated { [super viewWillDisappear:animated]; if (!OCStringIsEmpty(self.viewModel.webViewTitle)) { self.viewModel.webViewLoadTitle = YES; } } - (void)ym_setupViews{ [self.view addSubview:self.webArticleView]; [self.view setNeedsUpdateConstraints]; [self.view updateConstraintsIfNeeded]; } - (void)updateViewConstraints{ [self.webArticleView mas_makeConstraints:^(MASConstraintMaker *make) { make.top.equalTo(self.view).offset(kYMNavHeight); make.left.equalTo(self.view); make.right.equalTo(self.view); make.bottom.equalTo(self.view); }]; [super updateViewConstraints]; } - (void)ym_bindViewModel{ [self.webArticleView ym_bindViewModel:self.viewModel]; } - (YMWebArticleView *)webArticleView{ if (!_webArticleView) { _webArticleView = [[YMWebArticleView alloc]init]; } return _webArticleView; } @end