material-components / material-components-android

Modular and customizable Material Design UI components for Android
Apache License 2.0
16.25k stars 3.06k forks source link

System navigation bar gets intransparent due to white bottom bar #2536

Closed patrickfrei closed 2 years ago

patrickfrei commented 2 years ago

Description: I'm using a ViewPager2 together with a TabLayout and an edge-to-edge design (https://developer.android.com/training/gestures/edge-to-edge) with a transparent system navigation bar. As child of the ViewPager2, a RecyclerView list is implemented. When scrolling down the list, a white bar at the bottom appears as soon as the tabs disappear at the top. This causes the initially transparent system navigation bar to be intransparent again. It's not possible to keep this bar hidden by using android:clipToPadding="false" when scrolling down. It seems to be a bug as the logic maybe uses a wrong layout height. I'm using Material Design M3 (1.6.0-alpha02).

I've briefly described the issue in the Google Issue Tracker including a video but didn't get a feedback yet: https://issuetracker.google.com/issues/212882846

Maybe, the reason for the missing feedback is that the issue is not related to ViewPager2 but to Material Design? What do you think?

Expected behavior: android:clipToPadding="false" will prevent the white bar at the bottom to appear when scrolling down the list.

Android API version: 10 / 11 / 12

Material Library version: com.google.android.material:material:1.6.0-alpha02

Device: Tested on multiple (real) devices and Android versions but I mainly test on a Pixel 5 emulator with Android 11

hunterstich commented 2 years ago

Hey @patrickfrei,

Do you mind uploading a screen recording of the issue and a small sample that reproduces the issue? That would go a long way in fully understanding what might be happening.

patrickfrei commented 2 years ago

@hunterstich Yes sure, here we go:

pekingme commented 2 years ago

@patrickfrei Thanks for the video. That helps. Could you upload your sample project directly to your github repo? If that's not convenient, could you compress it into .zip format? Mac user here. TIA

patrickfrei commented 2 years ago

@pekingme I have no github repo in place, but I've uploaded a .zip file for you. You can find it here: https://github.com/patrickfrei/test_coding/blob/main/MyApplication.zip Thank you for having a look into that issue.

pekingme commented 2 years ago

Thanks for the sample project. First of all, the white bottom bar is the android:paddingBottom="50dp" set on the ViewPager2. You can see it persist when removing all material AppBarLayout from the layout. Interestingly, not sure why the clipToPadding doesn't work in this case. I recommend to follow up in the thread you filed with AndroidX. I'm closing this issue. Feel free to re-open if there's anything suspicious about AppBarLayout causing the issue.