Skip to content

Commit 26a6630

Browse files
committed
标签调整问题修正
1 parent fbe7930 commit 26a6630

3 files changed

Lines changed: 22 additions & 7 deletions

File tree

Coding_iOS/Views/ProjectTopicsView.m

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,9 @@ - (void)openList:(NSInteger)segmentIndex
170170
defaultIndex:[_totalIndex[segmentIndex] integerValue]
171171
selectedBlock:^(NSInteger index) {
172172
[weakSelf changeIndex:index withSegmentIndex:segmentIndex];
173+
}
174+
hideBlock:^() {
175+
[weakSelf.mySegmentControl selectIndex:-1];
173176
}];
174177
listView.tag = 9898;
175178
[self addSubview:listView];
@@ -189,11 +192,12 @@ - (void)openList:(NSInteger)segmentIndex
189192
defaultIndex:[_totalIndex[segmentIndex] integerValue]
190193
selectedBlock:^(NSInteger index) {
191194
[weakSelf changeIndex:index withSegmentIndex:segmentIndex];
192-
}];
195+
}
196+
hideBlock:^() {
197+
[weakSelf.mySegmentControl selectIndex:-1];
198+
}];
193199
} else {
194200
// 隐藏
195-
[self.mySegmentControl selectIndex:-1];
196-
197201
[lView hideBtnView];
198202
}
199203
}

Coding_iOS/Views/TopicListView.h

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,18 +9,21 @@
99
#import <UIKit/UIKit.h>
1010

1111
typedef void(^TopicListViewBlock)(NSInteger index);
12+
typedef void(^TopicListViewHideBlock)();
1213

1314
@interface TopicListView : UIView
1415

1516
- (id)initWithFrame:(CGRect)frame
1617
titles:(NSArray *)titles
1718
numbers:(NSArray *)numbers
1819
defaultIndex:(NSInteger)index
19-
selectedBlock:(TopicListViewBlock)selectedHandle;
20+
selectedBlock:(TopicListViewBlock)selectedHandle
21+
hideBlock:(TopicListViewHideBlock)hideHandle;
2022
- (void)changeWithTitles:(NSArray *)titles
2123
numbers:(NSArray *)numbers
2224
defaultIndex:(NSInteger)index
23-
selectedBlock:(TopicListViewBlock)selectedHandle;
25+
selectedBlock:(TopicListViewBlock)selectedHandle
26+
hideBlock:(TopicListViewHideBlock)hideHandle;
2427

2528
- (void)showBtnView;
2629
- (void)hideBtnView;

Coding_iOS/Views/TopicListView.m

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ @interface TopicListView ()
1818
}
1919

2020
@property (nonatomic , copy) TopicListViewBlock block;
21+
@property (nonatomic , copy) TopicListViewHideBlock hideBlock;
2122

2223
@end
2324

@@ -28,11 +29,13 @@ - (id)initWithFrame:(CGRect)frame
2829
numbers:(NSArray *)numbers
2930
defaultIndex:(NSInteger)index
3031
selectedBlock:(TopicListViewBlock)selectedHandle
32+
hideBlock:(TopicListViewHideBlock)hideHandle
3133
{
3234
self = [super initWithFrame:frame];
3335
if (self) {
3436
self.backgroundColor = [UIColor colorWithRed:0 green:0 blue:0 alpha:0.4];
3537
self.block = selectedHandle;
38+
self.hideBlock = hideHandle;
3639
self.clipsToBounds = YES;
3740

3841
_baseBtn = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, kScreen_Width, self.frame.size.height)];
@@ -80,9 +83,11 @@ - (void)changeWithTitles:(NSArray *)titles
8083
numbers:(NSArray *)numbers
8184
defaultIndex:(NSInteger)index
8285
selectedBlock:(TopicListViewBlock)selectedHandle
86+
hideBlock:(TopicListViewHideBlock)hideHandle
8387
{
8488
self.block = selectedHandle;
85-
89+
self.hideBlock = hideHandle;
90+
8691
CGRect frame = _baseView.frame;
8792
frame.origin.y = -frame.size.height;
8893
[UIView animateWithDuration:0.2 delay:0.0 options:UIViewAnimationOptionCurveLinear animations:^{
@@ -144,7 +149,10 @@ - (void)hideBtnView
144149
[UIView animateWithDuration:0.3 delay:0.0 options:UIViewAnimationOptionCurveLinear animations:^{
145150
_baseView.frame = frame;
146151
} completion:^(BOOL finished) {
147-
[UIView animateWithDuration:0.1 animations:^{
152+
if (self.hideBlock) {
153+
self.hideBlock();
154+
}
155+
[UIView animateWithDuration:0.2 animations:^{
148156
self.alpha = 0;
149157
} completion:^(BOOL finished) {
150158
[self removeFromSuperview];

0 commit comments

Comments
 (0)