Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • B BoomMenu
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 114
    • Issues 114
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 5
    • Merge requests 5
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • 黄伟平
  • BoomMenu
  • Wiki
  • Basic Usage

Basic Usage · Changes

Page history
Updated Basic Usage (markdown) authored Dec 08, 2016 by Weiping Huang's avatar Weiping Huang
Hide whitespace changes
Inline Side-by-side
Basic-Usage.md
View page @ 7357ece7
This chapter covers the basic setup for using this library. How to use BMB in just several lines of code?
###Creating BMB ###Create BMB
Add BMB in .xml file. Add BMB in .xml file.
...@@ -20,12 +20,42 @@ BoomMenuButton bmb = (BoomMenuButton) findViewById(R.id.bmb); ...@@ -20,12 +20,42 @@ BoomMenuButton bmb = (BoomMenuButton) findViewById(R.id.bmb);
Set button-enum for BMB, button-enum tells which kind of boom-button(the sub-buttons when booming) that you want. Set button-enum for BMB, button-enum tells which kind of boom-button(the sub-buttons when booming) that you want.
1. `ButtonEnum.SimpleCircle` corresponding to [Simple Circle Button]() 1. `ButtonEnum.SimpleCircle` corresponding to [Simple Circle Button](https://github.com/Nightonke/BoomMenu/wiki/Simple-Circle-Button)
2. `ButtonEnum.TextInsideCircle` corresponding to [Text Inside Circle Button](https://github.com/Nightonke/BoomMenu/wiki/Text-Inside-Circle-Button)
3. `ButtonEnum.TextOutsideCircle` corresponding to [Text Outside Circle Button](https://github.com/Nightonke/BoomMenu/wiki/Text-Outside-Circle-Button)
4. `ButtonEnum.Ham` corresponding to [Ham Button](https://github.com/Nightonke/BoomMenu/wiki/Ham-Button)
``` ```
bmb.setButtonEnum(ButtonEnum.SimpleCircle); bmb.setButtonEnum(ButtonEnum.SimpleCircle);
``` ```
bmb.setButtonEnum(ButtonEnum.SimpleCircle);
bmb.setPiecePlaceEnum(PiecePlaceEnum.DOT_1); Then you need to tell BMB how it should place pieces on itself. Click the links for 4 kinds of buttons above to check different piece-place-enums.
bmb.setButtonPlaceEnum(ButtonPlaceEnum.SC_1);
``` ```
\ No newline at end of file bmb.setPiecePlaceEnum(PiecePlaceEnum.DOT_3_1);
```
Now tell BMB how to place the buttons on the screen when booming. Click the links for 4 kinds of buttons above to check different button-place-enums.
```
bmb.setButtonPlaceEnum(ButtonPlaceEnum.SC_3_3);
```
###Add Builders
You have set attributes for BMB itself, now add builders for customizing boom-buttons to BMB. There are 4 different builders for the 4 kinds of boom-buttons above. For instance, use `SimpleCircleButton.Builder` for `ButtonEnum.SimpleCircle`. Click the links for 4 kinds of buttons above to find out how to use builders.
```
for (int i = 0; i < bmb.getButtonPlaceEnum().buttonNumber(); i++) {
bmb.addBuilder(new SimpleCircleButton.Builder()
.normalImageRes(R.drawable.jellyfish));
}
```
And now your BMB is ready for a boom.
###Attention
You must keep the number of piece-place-enum, number of button-place-enum and number of builders being the same.
The name of piece-place-enum is XXX_N_M, where XXX is name(DOT or HAM), N is number and M represents different types. Similarly, the name of button-place-enum is YYY_N_M. You must keep the first N equals to the second one. But you needn't keep the two M same(The code above is an example: DOT_3_1 and SC_3_3).
And the number of builders must be N. Any breaking-rules-code will get a runtime exception.
\ No newline at end of file
Clone repository
  • Attributes for BMB or Pieces on BMB
  • Basic Usage
  • Button Place Alignments
  • Cache Optimization & Boom Area
  • Change Boom Buttons Dynamically
  • Click Event and Listener
  • Control BMB
  • Custom Position
  • Different Order for Buttons
  • Different Ways to Boom
  • Ease Animations for Buttons
  • Fade Views
  • Ham Button
  • Home
  • Other Animations Attributes for Buttons
View All Pages