ModalBottomSheetDialog

De library is ontstaan om het simpeler te maken om een Material BottomSheet toe te voegen aan een app. Er zijn er al meerdere maar ik wilde graag mijn eigen variant van een ModalBottomSheetDialog introduceren. Deze versie is te gebruiken vanaf Android 4.1 (API 16).

Hieronder volgt een verkorte versie van de documentatie voor de library. Bekijk de GitHub repository voor up to date versie en meer mogelijkheden zoals verschillende layouts en afgeronde hoeken.

ModalBottomSheetDialog voorbeeld

Repository

Voeg onderstaande toe aan je build.gradle (niet de module):

allprojects { repositories { ... maven { url "https://jitpack.io" } }}
Dependency

Voeg onderstaande toe aan je module build.gradle (controleer de laatste versie op de GitHub repository):

dependencies { ... implementation 'com.github.invissvenska:ModalBottomSheetDialog:VERSION'}
Configuratie

Implement de ModalBottomSheetDialog.Listener interface in je Activity of Fragment:

public class MainActivity extends AppCompatActivity implements ModalBottomSheetDialog.Listener { // some other code @Override public void onItemSelected(String tag, Item item) { Toast.makeText(getApplicationContext(), "Tag: " + tag + ", clicked on: " + item.getTitle(), Toast.LENGTH_SHORT).show(); }}
new ModalBottomSheetDialog.Builder() .setHeader(String title) // optional .setHeaderLayout(@LayoutRes int layoutResource) // optional (TextView must have id 'header' in layout) .add(@MenuRes int menuResource) // can be used more then once .setItemLayout(@LayoutRes int layoutResource) // optional (TextView with id 'title' or ImageView with id 'icon' must be defined in layout) .setColumns(int columns) // optional (default is 1) .setRoundedModal(boolean roundedModal) // optional (default is false) .show(FragmentManager fragmentManager, String tag);
Dark Mode

Als je Dark mode wilt gebruiken, dan hoef je alleen een DayNight theme te gebruiken als parent in je styles.xml, bijvoorbeeld:

<resources> <!-- Base application theme. --> <style name="AppTheme" parent="Theme.MaterialComponents.DayNight.DarkActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> </style> <!-- other style declarations --></resources>
ModalBottomSheetDialog Dark Mode

Bekijk de GitHub repository voor meer voorbeelden, de actuele documentatie en meest recente versies.