YTTableView
- 添加滑动菜单功能。
- 为了优化 tableview 滑动框,您只需设置 heightCached 属性。
示例
self.tableView = [[YTTableView alloc] initWithFrame:self.view.bounds];
self.tableView.delegate = (id <UITableViewDelegate>)self;
self.tableView.dataSource = (id <UITableViewDataSource>)self;
self.tableView.menuDelegate = (id<YTTableViewMenuDelegate>)self;
self.tableView.menuItemLayout = EMenuItemLayoutIconTop;
self.tableView.menuTitleColor = [UIColor yellowColor];
self.tableView.heightCached = YES;
[self.view addSubview:self.tableView];
#pragma - mark - YTTableViewMenuDelegate
- (BOOL)tableView:(YTTableView *)tableView supportMenuAtIndexPath:(NSIndexPath *)indexPath
{
return indexPath.row % 2 == 0 ? YES : NO;
}
- (NSUInteger)tableView:(YTTableView *)tableView menuItemCountAtIndexPath:(NSIndexPath *)indexPath
{
if(indexPath.row == 0)
return 3;
return 2;
}
- (UIImage *)tableView:(YTTableView *)tableView menuIconAtIndex:(NSUInteger)index atIndexPath:(NSIndexPath *)indexPath
{
if(indexPath.row == 0)
{
return [UIImage imageNamed:@"favorite"];
}
return nil;
}
- (NSString *)tableView:(YTTableView *)tableView menuTitleAtIndex:(NSUInteger)index atIndexPath:(NSIndexPath *)indexPath
{
if(indexPath.row == 0)
return [NSString stringWithFormat:@"菜单%lu", (unsigned long)index];
return index == 0 ? @"编辑" : @"更多";
}
- (UIColor *)tableView:(YTTableView *)tableView menuColorAtIndex:(NSUInteger)index atIndexPath:(NSIndexPath *)indexPath
{
return index == 0 ? [UIColor redColor] : [UIColor greenColor];
}