Commit 8e23981c cgx

完成滑块时间控件UI

1 个父辈 6e0e758e
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
#import "JXMovableCellTableView.h" #import "JXMovableCellTableView.h"
#import "SleepReadyRequestModel.h" #import "SleepReadyRequestModel.h"
#import "RelaxItemsView.h" #import "RelaxItemsView.h"
#import "ReadyItem.h"
@interface ReadyListController () <JXMovableCellTableViewDataSource, JXMovableCellTableViewDelegate> @interface ReadyListController () <JXMovableCellTableViewDataSource, JXMovableCellTableViewDelegate>
@property (nonatomic, strong) RelaxItemsView *relaxItemsView; @property (nonatomic, strong) RelaxItemsView *relaxItemsView;
...@@ -40,8 +41,6 @@ ...@@ -40,8 +41,6 @@
[self.view addSubview:self.relaxItemsView]; [self.view addSubview:self.relaxItemsView];
[self.view addSubview:self.prepareItemsView]; [self.view addSubview:self.prepareItemsView];
[self queryPreparePeaceListRequest];
} }
- (void)queryPreparePeaceListRequest { - (void)queryPreparePeaceListRequest {
...@@ -52,7 +51,7 @@ ...@@ -52,7 +51,7 @@
self.relax_items = requestModel.relax_items; self.relax_items = requestModel.relax_items;
self.prepare_items = requestModel.prepare_items; self.prepare_items = requestModel.prepare_items;
[self.relaxItemsView adjustRelax:self.relax_items]; [self.relaxItemsView adjustRelax:self.relax_items relaxTime:requestModel.relax_time];
[self.prepareItemsView reloadData]; [self.prepareItemsView reloadData];
} }
}]; }];
...@@ -75,6 +74,7 @@ ...@@ -75,6 +74,7 @@
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier]; cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
cell.selectionStyle = UITableViewCellSelectionStyleNone; cell.selectionStyle = UITableViewCellSelectionStyleNone;
} }
cell.backgroundColor = DSClearColor;
cell.textLabel.text = [NSString stringWithFormat:@"%ld", indexPath.row + 1]; cell.textLabel.text = [NSString stringWithFormat:@"%ld", indexPath.row + 1];
return cell; return cell;
} }
...@@ -96,6 +96,18 @@ ...@@ -96,6 +96,18 @@
[self.prepareItemsView reloadData]; [self.prepareItemsView reloadData];
} }
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
ReadyItem *item = self.prepare_items[indexPath.row];
#warning 模拟业务逻辑
if (indexPath.row == 0) {
// 移除
[self.relaxItemsView removeItem:1];
} else if (indexPath.row == 1) {
// 添加
[self.relaxItemsView addItem:item];
}
}
#pragma mark - lazy #pragma mark - lazy
- (RelaxItemsView *)relaxItemsView { - (RelaxItemsView *)relaxItemsView {
if (!_relaxItemsView) { if (!_relaxItemsView) {
......
...@@ -9,9 +9,20 @@ ...@@ -9,9 +9,20 @@
NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_BEGIN
@class ReadyTimeMarker;
@protocol ReadyTimeMarkerDelegate <NSObject>
/// 首次触摸获获取触摸浮标
/// @param marker marker
- (void)touchesBeganWithMarker:(ReadyTimeMarker *)marker;
- (void)moveMarkerWithTranslationX:(CGFloat)translationX;
@end
/// 安睡准备时间调整控制器 /// 安睡准备时间调整控制器
@interface ReadyTimeMarker : UIView @interface ReadyTimeMarker : UIView
@property (nonatomic, weak) id<ReadyTimeMarkerDelegate> delegate;
@end @end
NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
#import "ReadyTimeMarker.h" #import "ReadyTimeMarker.h"
@interface ReadyTimeMarker () <UIGestureRecognizerDelegate> @interface ReadyTimeMarker ()
@end @end
@implementation ReadyTimeMarker @implementation ReadyTimeMarker
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
[self addSubview:dotView]; [self addSubview:dotView];
[markIV mas_makeConstraints:^(MASConstraintMaker *make) { [markIV mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.bottom.equalTo(self); make.centerX.bottom.equalTo(self);
make.width.height.equalTo(@30); make.width.height.equalTo(@30);
}]; }];
[dotView mas_makeConstraints:^(MASConstraintMaker *make) { [dotView mas_makeConstraints:^(MASConstraintMaker *make) {
...@@ -36,25 +36,24 @@ ...@@ -36,25 +36,24 @@
}]; }];
// 添加拖动手势 // 添加拖动手势
UIPanGestureRecognizer *panGesture = [UIPanGestureRecognizer new]; UIPanGestureRecognizer *panGesture = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(panAction:)];
panGesture.delegate = self;
[self addGestureRecognizer:panGesture]; [self addGestureRecognizer:panGesture];
} }
return self; return self;
} }
#pragma mark - UIGestureRecognizerDelegate - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
- (BOOL)gestureRecognizerShouldBegin:(UIPanGestureRecognizer *)gestureRecognizer { if (self.delegate && [self.delegate respondsToSelector:@selector(touchesBeganWithMarker:)]) {
CGPoint translation = [gestureRecognizer translationInView:gestureRecognizer.view]; [self.delegate touchesBeganWithMarker:self];
CGPoint locationPoint = [gestureRecognizer locationInView:gestureRecognizer.view]; }
if (translation.x < 0) { }
// 向左滑
NSLog(@"向左滑"); - (void)panAction:(UIPanGestureRecognizer *)panGR {
} else if (translation.x > 0) { CGPoint translation = [panGR translationInView:panGR.view.superview];
// 向右滑 [panGR setTranslation:CGPointZero inView:panGR.view.superview];
NSLog(@"向右滑"); if (self.delegate && [self.delegate respondsToSelector:@selector(moveMarkerWithTranslationX:)]) {
[self.delegate moveMarkerWithTranslationX:translation.x];
} }
return NO;
} }
- (void)drawRect:(CGRect)rect { - (void)drawRect:(CGRect)rect {
......
...@@ -6,12 +6,24 @@ ...@@ -6,12 +6,24 @@
// //
#import <UIKit/UIKit.h> #import <UIKit/UIKit.h>
#import "ReadyItemCell.h"
NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_BEGIN
@interface RelaxItemsView : UIView @interface RelaxItemsView : UIView
- (void)adjustRelax:(NSArray *)relax_items; /// 重置任务
/// @param relax_items relax_items
/// @param relax_time 放松总时长
- (void)adjustRelax:(NSArray *)relax_items relaxTime:(int)relax_time;
/// 移除任务
/// @param item_id 任务id
- (void)removeItem:(int)item_id;
/// 添加任务项
/// @param item item
- (void)addItem:(ReadyItem *)item;
@end @end
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_BEGIN
@interface SleepReadyRequestModel : DSNetworkTool @interface SleepReadyRequestModel : DSNetworkTool
@property (nonatomic, assign) int relax_time;
@property (nonatomic, strong) NSArray *relax_items; @property (nonatomic, strong) NSArray *relax_items;
@property (nonatomic, strong) NSArray *prepare_items; @property (nonatomic, strong) NSArray *prepare_items;
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
DSLog(@"安睡准备设置页面列表数据接口apiDic:%@", apiDic); DSLog(@"安睡准备设置页面列表数据接口apiDic:%@", apiDic);
requestModel.resCode = DSResCodeSuccess; requestModel.resCode = DSResCodeSuccess;
NSDictionary *resultDic = apiDic[@"result"]; NSDictionary *resultDic = apiDic[@"result"];
requestModel.relax_time = [resultDic[@"relax_time"] intValue];
NSArray *relax_items = resultDic[@"relax_items"]; NSArray *relax_items = resultDic[@"relax_items"];
NSArray *prepare_items = resultDic[@"prepare_items"]; NSArray *prepare_items = resultDic[@"prepare_items"];
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!