BottomSheetBehavior został wprowadzony do biblioteki wsparcia projektowania Android 23.2, jednak nie przyciemnia reszty ekranu i nie blokuje interakcji z resztą interfejsu użytkownika. Czy mimo to można to osiągnąć?Dim Screen i interakcja bloku z BottomSheets
6
A
Odpowiedz
2
public class BottomSheetDimmedFragment extends BottomSheetDialogFragment {
public static final String TAG = BottomSheetDimmedFragment.class.getSimpleName();
@NonNull
@Override
public Dialog onCreateDialog(final Bundle savedInstanceState) {
final BottomSheetDialog dialog = (BottomSheetDialog) super.onCreateDialog(savedInstanceState);
final View view = View.inflate(getContext(), R.layout.test, null);
dialog.setContentView(view);
return dialog;
}
public void show(final FragmentActivity fragmentActivity) {
show(fragmentActivity.getSupportFragmentManager(), TAG);
}
}
W swojej działalności:
BottomSheetDimmedFragment sheet = new BottomSheetDimmedFragment();
sheet.show(this);
Teraz będziesz miał słabe i również po kliknięciu na przyćmione okno zostanie zamknięte.
Realizacja zaczerpnięte z here.
1
Użyj dolnego arkusza z fragmentem zamiast widoku :)