iOS 爆炸效果按钮组件 VHBoomMenuButton
- 授权协议: Apache
- 开发语言: Objective-C
- 操作系统: iOS
- 软件首页: https://github.com/Nightonke/VHBoomMenuButton
- 软件文档: https://github.com/Nightonke/VHBoomMenuButton
软件介绍
VHBoomMenuButton是一个瞬间爆炸效果的菜单按钮组件。
使用示例:
下面一个非常简单的例子,如何构建拥有三个圆形按钮的BMB:
//
// ViewController.m
// VHBoomMenuButtonTest
//
// Created by 黄伟平 on 16/8/7.
// Copyright © 2016年 黄伟平. All rights reserved.
//
#import "ViewController.h"
#import "VHBoomMenuButton.h"
#define UIColorFromRGB(rgbValue) [UIColor colorWithRed:((float)((rgbValue & 0xFF0000) >> 16)) / 255.0 green:((float)((rgbValue & 0xFF00) >> 8)) / 255.0 blue:((float)(rgbValue & 0xFF)) / 255.0 alpha:1.0]
@interface ViewController ()
@end
@implementation ViewController
- (void)loadView
{
CGRect screenFrame = [[UIScreen mainScreen] bounds];
self.view = [[UIView alloc] initWithFrame:screenFrame];
self.view.backgroundColor = [UIColor whiteColor];
self.view.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;
// 1. 把BMB放在你想放的地方
CGFloat bmbRadius = 60;
VHBoomMenuButton *bmb = [[VHBoomMenuButton alloc] initWithFrame:CGRectMake(screenFrame.size.width - 20 - bmbRadius,
screenFrame.size.height - 20 - bmbRadius,
bmbRadius,
bmbRadius)];
// 2. 选择你想要的按钮类型
bmb.buttonEnum = VHButtonSimpleCircle;
// 3. 在爆炸之前,告诉BMB你想怎么放在它身上
bmb.piecePlaceEnum = VHPiecePlace_DOT_3_1;
// 4. 在爆炸之后,告诉BMB你想怎么放在屏幕上
bmb.buttonPlaceEnum = VHButtonPlace_SC_3_3;
// 5. 添加按钮
[bmb addSimpleCircleButtonBuilderBlock:^(VHSimpleCircleButtonBuilder *builder) {
builder.imageNormal = @"bat";
builder.buttonNormalColor = UIColorFromRGB(0xD32F2F);
builder.buttonPressedColor = UIColorFromRGB(0xF44336);
}];
[bmb addSimpleCircleButtonBuilderBlock:^(VHSimpleCircleButtonBuilder *builder) {
builder.imageNormal = @"bear";
builder.buttonNormalColor = UIColorFromRGB(0xD32F2F);
builder.buttonPressedColor = UIColorFromRGB(0xF44336);
}];
[bmb addSimpleCircleButtonBuilderBlock:^(VHSimpleCircleButtonBuilder *builder) {
builder.imageNormal = @"bee";
builder.buttonNormalColor = UIColorFromRGB(0xD32F2F);
builder.buttonPressedColor = UIColorFromRGB(0xF44336);
}];
[self.view addSubview:bmb];
}
@end你所需要做的只是选择属性,其他由BMB完成。
警告! 你必须保证 piecePlaceEnum的数量, buttonPlaceEnum的数量, 你添加的builders数量一致。 可以注意到,piecePlaceEnum的名字是 VHPiecePlace_XXX_N_M, XXX 是名字, N 表示按钮数量, M 用作表示不同种类。 类似的,buttonPlaceEnum的名字是VHButtonPlace_YYY_N_M。 你必须保证两者的N相同,当然M可以不通,比如例子中的:VHPiecePlace_DOT_3_1 和 VHButtonPlace_SC_3_3。
算法竞赛入门经典(第2版)
刘汝佳 / 清华大学出版社 / 2014-6-1 / CNY 49.80
《算法竞赛入门经典(第2版)》是一本算法竞赛的入门与提高教材,把C/C++语言、算法和解题有机地结合在一起,淡化理论,注重学习方法和实践技巧。全书内容分为12 章,包括程序设计入门、循环结构程序设计、数组和字符串、函数和递归、C++与STL入门、数据结构基础、暴力求解法、高效算法设计、动态规划初步、数学概念与方法、图论模型与算法、高级专题等内容,覆盖了算法竞赛入门和提高所需的主要知识点,并含有大量......一起来看看 《算法竞赛入门经典(第2版)》 这本书的介绍吧!
