Hi Everyone in This Android Tutorial, I am Working with Android bottom Sheet dialog box. Bottom Sheet like Google Drive App. You can notice bottom sheets in apps like map apps (bottom sheet reveals location, directions information), music players (Play bar sticks to bottom and opens when swipe up and also open With button click ). The bottom sheet is the component of the android design support library. Android Bottom Sheet with Dialog Box Example.
Modal Bottom Sheet: The Modal bottom sheets have a higher elevation. These usually replaces menus or dialogs. Generally, modal bottom sheets used to show deep-linked content from other apps. example Google Drive app.
Let’s Start on Android Bottom Sheet with Dialog Box Example -Android development.
- Create a Project with an empty activity.
- make a Bottom sheet UI XML File.
- Implement bottom Sheet UI In Main Activity.
Step 1: Create a Layout for the bottom dialog box.
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="8dp" android:paddingTop="8dp"> <!-- NOTE: This list should be displayed in a list instead of nested layouts --> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:clickable="true" android:foreground="?attr/selectableItemBackground" android:orientation="horizontal" android:paddingBottom="8dp" android:paddingLeft="@dimen/activity_margin" android:paddingRight="@dimen/activity_margin" android:paddingTop="8dp"> <ImageView android:layout_width="24dp" android:layout_height="24dp" android:layout_marginRight="32dp" android:src="@drawable/ic_remove_red_eye_black_24dp" android:tint="#737373" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:text="Preview" android:textColor="#737373" android:textSize="16sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:clickable="true" android:foreground="?attr/selectableItemBackground" android:orientation="horizontal" android:paddingBottom="8dp" android:paddingLeft="@dimen/activity_margin" android:paddingRight="@dimen/activity_margin" android:paddingTop="8dp"> <ImageView android:layout_width="24dp" android:layout_height="24dp" android:layout_marginRight="32dp" android:src="@drawable/ic_share_black_24dp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:text="Share" android:textSize="16sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:clickable="true" android:foreground="?attr/selectableItemBackground" android:orientation="horizontal" android:paddingBottom="8dp" android:paddingLeft="@dimen/activity_margin" android:paddingRight="@dimen/activity_margin" android:paddingTop="8dp"> <ImageView android:layout_width="24dp" android:layout_height="24dp" android:layout_marginRight="32dp" android:src="@drawable/ic_link_black_24dp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:text="Get link" android:textSize="16sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:clickable="true" android:foreground="?attr/selectableItemBackground" android:orientation="horizontal" android:paddingBottom="8dp" android:paddingLeft="@dimen/activity_margin" android:paddingRight="@dimen/activity_margin" android:paddingTop="8dp"> <ImageView android:layout_width="24dp" android:layout_height="24dp" android:layout_marginRight="32dp" android:src="@drawable/ic_content_copy_black_24dp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:text="Make a Copy" android:textSize="16sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:clickable="true" android:foreground="?attr/selectableItemBackground" android:orientation="horizontal" android:paddingBottom="8dp" android:paddingLeft="@dimen/activity_margin" android:paddingRight="@dimen/activity_margin" android:paddingTop="8dp"> <ImageView android:layout_width="24dp" android:layout_height="24dp" android:layout_marginRight="32dp" android:src="@drawable/ic_email_black_24dp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:text="Email a Copy" android:textSize="16sp" /> </LinearLayout> </LinearLayout>
Step 2 Open Main Java file Main.java And Imaple these View.
used These Two Method whare you want to open these android bottom sheet dialog box. Like on Button ClickListioner
public void showBottomSheetDialog() { View view = getLayoutInflater().inflate(R.layout.fragment_bottom_sheet_dialog, null); BottomSheetDialog dialog = new BottomSheetDialog(this); dialog.setContentView(view); dialog.show(); }
public void showBottomSheetDialogFragment() { BottomSheetFragment bottomSheetFragment = new BottomSheetFragment(); bottomSheetFragment.show(getSupportFragmentManager(), bottomSheetFragment.getTag()); }