#import "ViewController.h"
#import "AwesomeMenu.h"
@interface ViewController ()<AwesomeMenuDelegate,AwesomeMenuItemDelegate>
@end
@implementation ViewController
- (void)viewDidLoad {
[superviewDidLoad];
[selfsetupAwesomeMenu];
}
#pragma mark - 创建 AwesomeMenu按钮
- (void)setupAwesomeMenu
{
//1. 中间的startItem
AwesomeMenuItem *startItem = [[AwesomeMenuItemalloc]
initWithImage:[UIImageimageNamed:@"icon_pathMenu_background_normal"]
highlightedImage:[UIImageimageNamed:@"icon_pathMenu_background_highlighted"]
ContentImage:[UIImageimageNamed:@"icon_pathMenu_mainMine_normal"]
highlightedContentImage:nil];
//2. 添加其他几个按钮
AwesomeMenuItem *item0 = [[AwesomeMenuItemalloc]
initWithImage:[UIImageimageNamed:@"bg_pathMenu_black_normal"]
highlightedImage:nil
ContentImage:[UIImageimageNamed:@"icon_pathMenu_mainMine_normal"]
highlightedContentImage:[UIImageimageNamed:@"icon_pathMenu_mainMine_highlighted"]];
AwesomeMenuItem *item1 = [[AwesomeMenuItemalloc]
initWithImage:[UIImageimageNamed:@"bg_pathMenu_black_normal"]
highlightedImage:nil
ContentImage:[UIImageimageNamed:@"icon_pathMenu_collect_normal"]
highlightedContentImage:[UIImageimageNamed:@"icon_pathMenu_collect_highlighted"]];
AwesomeMenuItem *item2 = [[AwesomeMenuItemalloc]
initWithImage:[UIImageimageNamed:@"bg_pathMenu_black_normal"]
highlightedImage:nil
ContentImage:[UIImageimageNamed:@"icon_pathMenu_scan_normal"]
highlightedContentImage:[UIImageimageNamed:@"icon_pathMenu_scan_highlighted"]];
AwesomeMenuItem *item3 = [[AwesomeMenuItemalloc]
initWithImage:[UIImageimageNamed:@"bg_pathMenu_black_normal"]
highlightedImage:nil
ContentImage:[UIImageimageNamed:@"icon_pathMenu_more_normal"]
highlightedContentImage:[UIImageimageNamed:@"icon_pathMenu_more_highlighted"]];
NSArray *items =@[item0, item1, item2, item3];
//3. 创建 Menu
CGRect start=CGRectMake(20,150, 200,200);//中心按钮的位置
AwesomeMenu *menu = [[AwesomeMenualloc] initWithFrame:startstartItem:startItem menuItems:items];
[self.viewaddSubview:menu];
//4. 不要歪脖
menu.rotateAddButton =NO;//设置中心按钮的小人图像不倾斜
//5. 设置弹出范围
menu.menuWholeAngle =M_PI_2;//所有子按钮形成的跨度
//6. 设置位置
menu.startPoint =CGPointMake(50,50);//在初始化过的中心按钮位置基础上叠加数值修改中心按钮的位置;
menu.nearRadius=150;//子按钮先弹到离中心按钮100的距离,再弹回到结束时的位置(如果不设置menu.endRadius,则弹回到默认位置);当点击中心按钮收回子按钮时,不弹,
menu.farRadius=150;//子按钮先弹到离中心按钮100的距离,再弹回到结束时的位置(如果不设置menu.endRadius,则弹回到默认位置);当点击中心按钮收回子按钮时,子按钮先弹到离中心按钮100的距离,再弹回到结束时的位置;
menu.endRadius=80;//子按钮弹开结束时,离中心按钮的距离,也就时辐射半径
// menu.rotateAngle=M_PI*0.5;//决定第一个子按钮的位置,如果不设置这个参数,默认第一个子按钮和中心按钮的连线是一条数值方向的线;
menu.timeOffset=3;//点击中心按钮,每一个子按钮都是等3秒后开始弹出或弹回;
// menu.expandRotation=200;
// menu.closeRotation=100;
// menu.animationDuration=3;//从子按钮弹出到子按钮停止持续的时间
//7. 设置代理
menu.delegate =self;
//8. 设置透明度
menu.alpha =0.7;
}
#pragma mark 子按钮选中索引方法
- (void)awesomeMenu:(AwesomeMenu *)menu didSelectIndex:(NSInteger)idx
{
//1. 换图片
menu.contentImage = [UIImageimageNamed:@"icon_pathMenu_mainMine_normal"];
//2. 透明度
menu.alpha =0.7;
switch (idx) {
case0:
NSLog(@"0");
break;
case1:
// [self presentViewController:[[HMNavigationController alloc] initWithRootViewController:[HMCollectionViewController new]] animated:YES completion:nil];
NSLog(@"1");
break;
case2:
NSLog(@"2");
break;
case3:
NSLog(@"3");
break;
default:
break;
}
}
#pragma mark 中心按钮打开方法
- (void)awesomeMenuDidFinishAnimationOpen:(AwesomeMenu *)menu
{
//1. 换图片
menu.contentImage = [UIImageimageNamed:@"icon_pathMenu_cross_normal"];
//2. 透明度
menu.alpha =1;
NSLog(@"中心按钮打开");
}
#pragma mark 中心按钮关闭方法
- (void)awesomeMenuDidFinishAnimationClose:(AwesomeMenu *)menu
{
//1. 换图片
menu.contentImage = [UIImageimageNamed:@"icon_pathMenu_mainMine_normal"];
//2. 透明度
menu.alpha =0.7;
NSLog(@"中心按钮关闭");
}
-(void)AwesomeMenuItemTouchesBegan:(AwesomeMenuItem *)item{
NSLog(@"开始点击按钮");
}
-(void)AwesomeMenuItemTouchesEnd:(AwesomeMenuItem *)item{
NSLog(@"结束点击按钮");
}
- (void)didReceiveMemoryWarning {
[superdidReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end