[upload=1] /**
* 构建下拉视图
*/
- (void)buildMenuView
{
//避免多次绘制下拉菜单
if (self.isAlreadyDrawMenu)
{
return;
}
//构建菜单
self.menuItemDataSourceArray = [NSMutableArray arrayWithCapacity:0];
if ([self.dataSource respondsToSelector:@selector(dataSourceForMenuItem)])
{
self.menuItemDataSourceArray = [self.dataSource dataSourceForMenuItem];
__weak MenuTableViewCell *weakSelf = self;
[self.menuItemDataSourceArray enumerateObjectsUsingBlock:^(MenuItemModel *menuItemModel, NSUInteger idx, BOOL *stop) {
if (idx >= MAX_ITEM_COUNT)
{
//下拉菜单的item超过最大数(MAX_ITEM_COUNT:5)的时候就不绘制,可以自定义下拉菜单个数
return ;
}
CGRect menuItemRect = CGRectMake(MENU_ITEM_SPACE + (MENU_ITEM_SPACE + MENU_ITEM_WHIDE) * idx, 0, MENU_ITEM_WHIDE, MENU_ITEM_HEIGHT);
LYButton *menuItemButton = [[LYButton alloc] initWithFrame:menuItemRect model:menuItemModel];
menuItemButton.tag = idx;
[menuItemButton addTarget:self
action:@selector(menuItemClick:)
forControlEvents:UIControlEventTouchUpInside];
[weakSelf.menuView addSubview:menuItemButton];
}];
}
self.isAlreadyDrawMenu = YES;
}
连接见:
http://git.oschina.net/LYLHF/UITableViewMenu中附件