From 090bf32f953481ab20b2e73092fc291a05a96984 Mon Sep 17 00:00:00 2001 From: wuyabai <307540808@qq.com> Date: Wed, 1 Mar 2017 12:49:24 +0800 Subject: [PATCH] Changes in other popular search label (PYHotSearchStyleRankTag, PYHotSearchStyleRectangleTag) mode, click the clear button didn't refresh the UI (#59) --- PYSearch/PYSearchViewController.m | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/PYSearch/PYSearchViewController.m b/PYSearch/PYSearchViewController.m index 5fd38c2..9905d6d 100644 --- a/PYSearch/PYSearchViewController.m +++ b/PYSearch/PYSearchViewController.m @@ -463,7 +463,7 @@ - (void)setupHotSearchRectangleTags verticalLine.py_width = contentView.py_width; [contentView addSubview:verticalLine]; } - + [self layoutForDemand]; // 重新赋值,注意:当操作系统为iOS 9.x系列的tableHeaderView高度设置失效,需要重新设置tableHeaderView [self.baseSearchTableView setTableHeaderView:self.baseSearchTableView.tableHeaderView]; } @@ -559,6 +559,7 @@ - (void)setupHotSearchRankTags // 设置tableHeaderView高度 self.hotSearchView.py_height = CGRectGetMaxY(contentView.frame) + PYSEARCH_MARGIN * 2; self.baseSearchTableView.tableHeaderView.py_height = self.headerView.py_height = MAX(CGRectGetMaxY(self.hotSearchView.frame), CGRectGetMaxY(self.searchHistoryView.frame)); + [self layoutForDemand]; // 重新赋值,注意:当操作系统为iOS 9.x系列的tableHeaderView高度设置失效,需要重新设置tableHeaderView [self.baseSearchTableView setTableHeaderView:self.baseSearchTableView.tableHeaderView]; } @@ -634,7 +635,17 @@ - (NSArray *)addAndLayoutTagsWithTagsContentView:(UIView *)contentView tagTexts: } else if (self.searchHistoryTagsContentView == contentView) { // 搜索历史标签 self.searchHistoryView.py_height = CGRectGetMaxY(contentView.frame) + PYSEARCH_MARGIN * 2; } - // 根据布局要求调整位置 + [self layoutForDemand]; + self.baseSearchTableView.tableHeaderView.py_height = self.headerView.py_height = MAX(CGRectGetMaxY(self.hotSearchView.frame), CGRectGetMaxY(self.searchHistoryView.frame)); + // 取消隐藏 + self.baseSearchTableView.tableHeaderView.hidden = NO; + // 重新赋值, 注意:当操作系统为iOS 9.x系列的tableHeaderView高度设置失效,需要重新设置tableHeaderView + [self.baseSearchTableView setTableHeaderView:self.baseSearchTableView.tableHeaderView]; + return [tagsM copy]; +} + +/** 根据布局要求调整位置 */ +- (void)layoutForDemand { if (self.swapHotSeachWithSearchHistory == NO) { // 默认布局,热门搜索在搜索历史上方 self.hotSearchView.py_y = PYSEARCH_MARGIN * 2; self.searchHistoryView.py_y = self.hotSearches.count > 0 && self.showHotSearch ? CGRectGetMaxY(self.hotSearchView.frame) : 0; @@ -642,12 +653,6 @@ - (NSArray *)addAndLayoutTagsWithTagsContentView:(UIView *)contentView tagTexts: self.searchHistoryView.py_y = PYSEARCH_MARGIN * 2; self.hotSearchView.py_y = self.searchHistories.count > 0 && self.showSearchHistory ? CGRectGetMaxY(self.searchHistoryView.frame) : PYSEARCH_MARGIN * 2; } - self.baseSearchTableView.tableHeaderView.py_height = self.headerView.py_height = MAX(CGRectGetMaxY(self.hotSearchView.frame), CGRectGetMaxY(self.searchHistoryView.frame)); - // 取消隐藏 - self.baseSearchTableView.tableHeaderView.hidden = NO; - // 重新赋值, 注意:当操作系统为iOS 9.x系列的tableHeaderView高度设置失效,需要重新设置tableHeaderView - [self.baseSearchTableView setTableHeaderView:self.baseSearchTableView.tableHeaderView]; - return [tagsM copy]; } #pragma mark - setter