Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Place Snackbar at highest z order to avoid from being blocked by AutoCompleteTextView drop down

I have a Snackbar which is as follows:

enter image description here

However, if the drop down of the AutoCompleteTextView is too long, the drop down will block the Snackbar.

enter image description here

As you can see in the above image, the Snackbar is actually showing. However, its visibility is blocked by the long drop down. You can see from the above image

I try to use the following Snackbar code. Adding bringToFront() doesn't help much.

private void showSnackbar(String message) {
    Snackbar snackbar
            = Snackbar.make(getActivity().findViewById(R.id.content), message, Snackbar.LENGTH_LONG);
    snackbar.getView().bringToFront();
    snackbar.show();
}

R.id.content is a CoordinatorLayout:

    <android.support.design.widget.CoordinatorLayout
        android:id="@+id/content"
        android:background="?attr/MyActivityBackground"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:foreground="?attr/headerShadow" />

Is there any good way, to avoid Snackbar from being covered by AutoCompleteTextView's drop down?

like image 587
Cheok Yan Cheng Avatar asked May 31 '17 19:05

Cheok Yan Cheng


1 Answers

In my case I could get it to work with setZ:

Snackbar snackbar = Snackbar.make(container, text, Snackbar.LENGTH_LONG);
snackbar.getView().setZ(200);
snackbar.show();
like image 137
Tomer Avatar answered Sep 30 '22 22:09

Tomer