Files
yinmeng-ios-store/yinmeng-ios/DingDangApp/CodeClass/Dynamic/DynamicViewController.m
2023-12-13 17:56:07 +08:00

163 lines
6.0 KiB
Objective-C

//
// DynamicViewController.m
// DingDangApp
//
// Created by apple on 2023/5/27.
//
#import "DynamicViewController.h"
#import "DynamicHomeView.h"
#import "DDKuoLieView.h"
#import "DDDynamicSendViewController.h"
@interface DynamicViewController ()<UIScrollViewDelegate>
@property (nonatomic,strong) UIImageView *bgImgV;
//推荐
@property (nonatomic, strong) UIButton * recommendDynamicButton;
@property (nonatomic, strong) DynamicHomeView * recommendDynamicView;
//@property (nonatomic, strong) UIButton * kuoLieButton;
//@property (nonatomic, strong) DDKuoLieView * kuoLieView;
@property (nonatomic, strong) UIScrollView * myScrollView;
@property (nonatomic, assign) BOOL isClickedSegmented;
@property (nonatomic, assign) NSInteger startPage;
@property (nonatomic, strong) UIButton * releaseDynamicButton;
@end
@implementation DynamicViewController
- (UIScrollView *)myScrollView{
if (!_myScrollView)
{
_myScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, self.recommendDynamicButton.bottom+7, kWidth,kHeight - self.recommendDynamicButton.bottom -7- KTABBAR_H)];
_myScrollView.delegate = self;
_myScrollView.pagingEnabled = YES;
_myScrollView.bounces = NO;
_myScrollView.showsVerticalScrollIndicator = NO;
_myScrollView.showsHorizontalScrollIndicator = NO;
[_myScrollView addSubview:self.recommendDynamicView];
_myScrollView.contentSize = CGSizeMake(kWidth, CGRectGetHeight(_myScrollView.frame));
_myScrollView.backgroundColor = UIColor.clearColor;
}
return _myScrollView;
}
-(DynamicHomeView *)recommendDynamicView
{
if (!_recommendDynamicView) {
_recommendDynamicView = [[DynamicHomeView alloc] initWithFrame:CGRectMake(0, 0,kWidth, CGRectGetHeight(self.myScrollView.frame))];
// _recommendDynamicView.dynamicScene = @"recommend";
_recommendDynamicView.backgroundColor = UIColor.clearColor;
}
return _recommendDynamicView;
}
-(UIButton *)recommendDynamicButton
{
if (!_recommendDynamicButton) {
_recommendDynamicButton = [UIButton buttonWithType:(UIButtonTypeCustom)];
_recommendDynamicButton.frame = CGRectMake(10, DDStatusTopHeight(), 63, 40);
[_recommendDynamicButton setImage:[UIImage imageNamed:@"DynamicData_23"] forState:UIControlStateNormal];
[_recommendDynamicButton setImage:[UIImage imageNamed:@"DynamicData_24"] forState:UIControlStateSelected];
_recommendDynamicButton.selected = YES;
WeakSelf(weakSelf)
[_recommendDynamicButton jk_addTapActionWithBlock:^(UIGestureRecognizer *gestureRecoginzer) {
if (!weakSelf.recommendDynamicButton.selected) {
weakSelf.recommendDynamicButton.selected = YES;
weakSelf.isClickedSegmented = YES;
[weakSelf.myScrollView setContentOffset:CGPointMake(0, 0) animated:YES];
}
}];
}
return _recommendDynamicButton;
}
- (UIImageView *)bgImgV {
if (!_bgImgV) {
_bgImgV = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, kWidth, KAdaptedHeight(228))];
_bgImgV.image = [UIImage imageNamed:@"com_4"];
_bgImgV.contentMode = UIViewContentModeScaleAspectFill;
} return _bgImgV;
}
-(UIButton *)releaseDynamicButton
{
if (!_releaseDynamicButton) {
_releaseDynamicButton = [UIButton buttonWithType:(UIButtonTypeCustom)];
_releaseDynamicButton.frame = CGRectMake(kWidth-86-16, DDStatusTopHeight(), 86, 36);
[_releaseDynamicButton setBackgroundImage:[UIImage imageNamed:@"DynamicData_21"] forState:UIControlStateNormal];
WeakSelf(weakSelf)
[_releaseDynamicButton jk_addTapActionWithBlock:^(UIGestureRecognizer *gestureRecoginzer) {
DDDynamicSendViewController * sendVC = [[DDDynamicSendViewController alloc]init];
// vc.releaseDynamicReloadList = ^{
// @strongify(self)
// [self.dynamicView initRequest];
// };
[weakSelf.navigationController pushViewController:sendVC animated:YES];
}];
}
return _releaseDynamicButton;
}
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
self.view.backgroundColor = [UIColor jk_colorWithHexString:@"#f6f6f6"];
[self.view addSubview:self.bgImgV];
[self.view addSubview:self.recommendDynamicButton];
[self.view addSubview:self.myScrollView];
[self.view addSubview:self.releaseDynamicButton];
}
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
if (!self.isClickedSegmented)
{
CGFloat pageWidth = scrollView.frame.size.width;
NSInteger tmpPage = scrollView.contentOffset.x / pageWidth;
float tmpPage2 = scrollView.contentOffset.x / pageWidth;
NSInteger page = tmpPage2-tmpPage>=0.5 ? tmpPage+1 : tmpPage;
if (_startPage != page)
{
_startPage = page;
[self chooseSelectBtn];
}
}
}
- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView
{
CGFloat pageWidth = scrollView.frame.size.width;
NSInteger page = scrollView.contentOffset.x / pageWidth;
_startPage = page;
[self chooseSelectBtn];
self.isClickedSegmented = NO;
if (page != 0) {
[[NSNotificationCenter defaultCenter]postNotificationName:@"sortViewDissmiss" object:nil];
}
}
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
CGFloat pageWidth = scrollView.frame.size.width;
NSInteger page = scrollView.contentOffset.x / pageWidth;
_startPage = page;
[self chooseSelectBtn];
self.isClickedSegmented = NO;
if (page != 0) {
[[NSNotificationCenter defaultCenter]postNotificationName:@"sortViewDissmiss" object:nil];
}
}
- (void)chooseSelectBtn {
}
/*
#pragma mark - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
// Get the new view controller using [segue destinationViewController].
// Pass the selected object to the new view controller.
}
*/
@end