-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' of https://github.com/Emil332/TournamentBracketLib
- Loading branch information
Showing
1 changed file
with
91 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,91 @@ | ||
# TournamentBracketLib | ||
A library to generate tournament brackets with smooth transition and animations. | ||
|
||
|
||
https://user-images.githubusercontent.com/32976134/122669203-d7966c00-d1d9-11eb-8471-e88af082aeb3.mp4 | ||
|
||
|
||
## Use Cases of TournamentBracketLib | ||
- Include a layout for tournament brackets in your project | ||
- provides customisation options for background color, bracket color and text colors | ||
|
||
## Find this project useful? ❤️ | ||
- support it by providing a ⭐️ on the upper right of this page. | ||
|
||
## Requirement | ||
- TournamentBracketLib can be included in Android version 7 (Nougat) and above | ||
|
||
## Using TournamentBracket in your application | ||
- Add this to your project level build.gradle | ||
|
||
|
||
``` | ||
allprojects { | ||
repositories { | ||
... | ||
maven { url 'https://jitpack.io' } | ||
} | ||
} | ||
```` | ||
```` | ||
- Add the dependency | ||
``` | ||
dependencies { | ||
implementation 'com.github.Emil333:TournamentBracketLib:Tag' | ||
} | ||
``` | ||
- Add a `BracketsView` component in your XML file | ||
``` | ||
<com.ventura.bracketslib.BracketsView | ||
android:id="@+id/bracket_view" | ||
android:layout_width="match_parent" | ||
android:layout_height="match_parent" | ||
app:bracketBackgroundColor="#1c222e" | ||
app:bracketColor="#262e40" | ||
app:bracketTextColor="#fff" /> | ||
``` | ||
- Initialise your BracketsView | ||
``` | ||
BracketsView bracketsView = findViewById(R.id.bracket_view); | ||
``` | ||
- Provide the necessary data to populate the Brackets | ||
- Breaking down the Attributes | ||
- `CompetitorData` corresponds to an object with the necessary team/player data. Takes in `name` and `score` as parameters. | ||
``` | ||
CompetitorData brazilSemiFinal = new CompetitorData("Brazil", "3"); | ||
CompetitorData englandSemiFinal = new CompetitorData("England", "1"); | ||
CompetitorData argentinaSemiFinal = new CompetitorData("Argentina", "3"); | ||
CompetitorData russiaSemiFinal = new CompetitorData("Russia", "2"); | ||
CompetitorData brazilFinal = new CompetitorData("Brazil", "4"); | ||
CompetitorData argentinaFinal = new CompetitorData("Argentina", "2"); | ||
``` | ||
- `MatchData` corresponds to an object with the necessary competitor informations for a particular Match. Takes in two `CompetitorData` as parameters(Team1, Team2). | ||
``` | ||
MatchData match1SemiFinal = new MatchData(brazilSemiFinal, englandSemiFinal); | ||
MatchData match2SemiFinal = new MatchData(argentinaSemiFinal, russiaSemiFinal); | ||
MatchData match3Final = new MatchData(brazilFinal, argentinaFinal); | ||
``` | ||
- `ColomnData` corresponds to list of matches that needs to be displayed in a section (Semi final, final etc). Takes in a list of `MatchData` as parameter. | ||
``` | ||
ColomnData semiFinalColomn = new ColomnData(Arrays.asList(match1SemiFinal, match2SemiFinal)); | ||
ColomnData finalColomn = new ColomnData(Arrays.asList(match3Final)); | ||
``` | ||
- call the `setBracketsData(List<ColomnData> sectionList)` methods from `bracketsView` | ||
``` | ||
bracketsView.setBracketsData(Arrays.asList(semiFinalColomn, finalColomn)); | ||
``` | ||
- All set 👏🏻 | ||