MFExpandableMenu 是一个支持动画和样式的 iOS 7 扩展菜单。
注意:目前尚未推送到 CocoaPods 仓库
您可以在 Example/Demo 中找到示例项目。
显示包含 4 个项目的菜单
MFExpandableMenuDataSource
- 用于确定菜单中的项的数量和内容MFExpandableMenuDelegate
- 提供在菜单项被选中时的回调#import <MFExpandableMenu/MFExpandableMenuViewController.h>
@interface ViewController : UIViewController <MFExpandableMenuDataSource, MFExpandableMenuDelegate>
在实现中
MFExpandableMenuViewController *menuViewController = [[MFExpandableMenuViewController alloc] init];
// Custom background fade color
menuViewController.customBackgroundFadeColor = [UIColor purpleColor];
// Assign dataSource and delegate properties
menuViewController.dataSource = self;
menuViewController.delegate = self;
// Show the menu
[self presentViewController:menuViewController animated:YES completion:nil];
必需的 dataSource
方法
- (NSInteger)numberOfItemsInMenuViewController:(MFExpandableMenuViewController *)menuViewController {
return 4;
}
- (NSString *)menuViewController:(MFExpandableMenuViewController *)menuViewController
titleForMenuItemAtIndex:(NSInteger)index1 {
return [NSString stringWithFormat:@"Menu Item %d", index1 + 1];
}
- (UIView *)menuViewController:(MFExpandableMenuViewController *)menuViewController
detailViewForMenuItemAtIndex:(NSInteger)index1 {
return someUIView;
}
可选的 delegate
方法
- (void) menuViewController:(MFExpandableMenuViewController *)menuViewController
willShowDetailViewForMenuItemAtIndex:(NSInteger)index {
NSLog(@"Showing detail view for menu item at index: %i", index);
}
- (void) menuViewController:(MFExpandableMenuViewController *)menuViewController
willHideDetailViewForMenuItemAtIndex:(NSInteger)index {
NSLog(@"Hiding detail view for menu item at index: %i", index);
}
以下 MFExpandableMenuViewController
属性可以自定义
UIFont *customMenuItemFont
- 用于菜单项标签的字体UIColor *customMenuItemTextColor
- 用于菜单项标签的颜色UIColor *customBackgroundFadeColor
- 初始菜单项背景颜色的颜色,它将自动变亮以便在后续项中使用要运行单元测试套件
$ cd Example
$ make install
$ make ci
Mark Fayngersh, [email protected]
MFExpandableMenu 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。