今天试着写ios 分类似影响淘宝的商品详细页面
我使用第三方库EGORefreshTableHeaderView有一个下拉效果刷新PWLoadMoreTableFooterView上拉电阻负载许多其他
的基本思想是UISCrollView两页。一页展示商品概况。还有一页展示商品很多其它详情
首先,第一页的view包括一个UITableView,这个tableView实现PWLoadMoreTableFooterView中的delegate方法,
实现delegate代理方法的时候使用
- (void)scrollViewByPageControlPage:(NSInteger)page { [UIView beginAnimations:nil context:nil]; [UIView setAnimationDuration:0.50]; [self.backScrollView setContentOffset:CGPointMake(0, (ScreenHeight-navigationHeight-OffsetHeight)*page)]; [UIView commitAnimations]; }
将scrollView滚动到第二页。以便展示很多其它详情。
再次,在scrollview的第二页中增加一个View ,在此view上再创建一个ScrollView,这个scrollView实现EGORefreshTableHeaderView的delegate方法
详细例如以下:
#pragma mark - #pragma mark EGORefreshTableHeaderDelegate Methods - (void)egoRefreshTableHeaderDidTriggerRefresh:(EGORefreshTableHeaderView*)view{ [self reloadTableViewDataSource]; [self performSelector:@selector(doneLoadingTableViewDataForIndex) withObject:nil afterDelay:1.0]; } - (void)doneLoadingTableViewDataForIndex { _reloading = NO; [_refreshHeaderView egoRefreshScrollViewDataSourceDidFinishedLoading:lectureScrollView]; [_loadMoreFooterView pwLoadMoreTableDataSourceDidFinishedLoading]; [self scrollViewByPageControlPage:0]; } - (BOOL)egoRefreshTableHeaderDataSourceIsLoading:(EGORefreshTableHeaderView*)view{ return _reloading; // should return if data source model is reloading } - (NSDate*)egoRefreshTableHeaderDataSourceLastUpdated:(EGORefreshTableHeaderView*)view{ return [NSDate date]; // should return date data source was last changed }一下实现EGORefreshTableHeaderView的delegate方法
此处设置跳转到SCRollView第一页
- (void)doneLoadingTableViewDataForIndex { _reloading = NO; [_refreshHeaderView egoRefreshScrollViewDataSourceDidFinishedLoading:lectureScrollView]; [_loadMoreFooterView pwLoadMoreTableDataSourceDidFinishedLoading]; [self scrollViewByPageControlPage:0]; }
到此基本上实现了该框架。
推荐阅读:www.wahenzan.com
版权声明:本文博主原创文章。博客,未经同意不得转载。