Editar
El BottomSheet
ahora es parte del android-support-library
. Vea la respuesta de John Shelleys .
Desafortunadamente, actualmente no hay una forma "oficial" de cómo hacer esto (al menos ninguna que yo sepa).
Afortunadamente, hay una biblioteca llamada "BottomSheet" (clic) que imita la apariencia del BottomSheet
y es compatible con Android 2.1 y versiones posteriores.
En el caso de la aplicación Drive, así es como se vería el código con esta biblioteca:
new BottomSheet.Builder(this, R.style.BottomSheet_Dialog)
.title("New")
.grid()
.sheet(R.menu.menu_bottom_sheet)
.listener(new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
}).show();
menu_bottom_sheet (básicamente un recurso estándar /res/menu/*.xml)
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/folder"
android:title="Folder"
android:icon="@drawable/ic_action_folder" />
<item
android:id="@+id/upload"
android:title="Upload"
android:icon="@drawable/ic_action_file_upload" />
<item
android:id="@+id/scan"
android:title="Scan"
android:icon="@drawable/ic_action_camera_alt" />
</menu>
La salida se ve así:
Lo cual, creo, se acerca bastante al original. Si no está satisfecho con los colores, puede personalizarlo; vea esto (haga clic) .