In my Wear OS app, I used a ScalingLazyColumn to implement the List. I am also showing the Scrollbar using PositionIndicator.
The reason the app is rejected is always the same. It's because the "show scrollbars" Does anyone else have the same problem as me?
Following Google's guidance documentation, I checked below emulators and Galaxy Watch 4, the Scrollbar is ALWAYS visible.
- Wear OS small round 1.2"
- Wear OS large round 1.39"
- Wear OS square 1.2"
I had the same issue with my WearOS app, I started to get declined with "show scrollbars" out of nowhere. I went through the whole app and found one screen that had no scrollbars, but it still got rejected. I also tried to ensure enough elements are in each list so that it can actually scroll, but it still got rejected. I tried to "wiggle" the scroll position when the screen first appeared so that the scrollbar shows initially and then fades out, still rejected. I also tried to appeal the decision with no luck.
The only thing that helped in the end was to modify
PositionIndicator
so that it would always show up and never automatically hide. I copied the code fromandroidx.wear.compose:compose-material:1.0.1
and modified it so the scrollbars always show. There is still one check forcanScroll
, reading what other people say you might need to remove this check as well to really ALWAYS show the scrollbars? I had success with this solution where the scrollbars are hidden when there is not enough content to scroll.This is for
ScalingLazyColumn
but you should be able to adapt this setup to other scroll setups as well by copying out the code fromPositionIndicator
and then making sure thatvisibility()
returnsPositionIndicatorVisibility.Show
and notPositionIndicatorVisibility.AutoHide
.To use: