xamarin / Xamarin.Forms

Xamarin.Forms is no longer supported. Migrate your apps to .NET MAUI.
https://aka.ms/xamarin-upgrade
Other
5.62k stars 1.87k forks source link

Xamarin Forms on Android - Frame shadow causes all subsequent UI items to have shadow! #7218

Open vsfeedback opened 5 years ago

vsfeedback commented 5 years ago

This issue has been moved from a ticket on Developer Community.


simple xamarin forms app on android has odd shadow issues on subsequent UI control.

Simple grid with 3 rows first row -> Label 2nd row -> Frame with shadow 3rd row -> Label

the label in the 3rd row will have a shadow. The label in the first row will not.

Simple project is attached (test.zip)

The problem goes away only when I downgrade xamarin forms to 3.6.xxx or lower. (i.e. 4.0.xxx and up have the problem)


Original Comments

Visual Studio Feedback System on 8/8/2019, 11:34 PM:

We have directed your feedback to the appropriate engineering team for further evaluation. The team will review the feedback and notify you about the next steps.


Original Solutions

(no solutions)

samhouts commented 5 years ago

Can you please attach a small project that demonstrates this issue? Thanks!

sthewissen commented 5 years ago

I have this same issue. A repro project can be found here: https://github.com/sthewissen/WeirdShadow

Only happens on Android. Looking at previous issues this might also be a related issue #7345.

image

domenk commented 4 years ago

This issue still exists in Xamarin.Forms 4.5.0.356, on Android. iOS works as expected. Also, shadow on the view that follows the frame disappears if you wrap the view in StackLayout.

winterdouglas commented 4 years ago

+1 on this issue. Any feedbacks on when this will receive a fix?

Thanks.

AlexanderMelchers commented 4 years ago

Seeing the same issue on Xamarin.Forms 4.4.0.991640. Set-up is again a Grid with a Frame in the top row, then a CollectionView, BoxView and Button at the end. When turning on the shadow on the Frame, the BoxView also gets a shadow.

What seems to work as a work-around in our case is to manually set an android:VisualElement.Elevation on the Frame. With this turned on, the issue is suppressed, while the Frame receives a shadow. It even works if the Frame.HasShadow is left to true.

axearcenas commented 4 years ago

This solved my issue. Thanks.

dirivero commented 4 years ago

I think this is caused by this pull request.

Setting an arbitrary elevation on subsequent elements to match the logical order with the z-order, creates an unexpected shadow on every element with an Outline (BoxViews, Frames, etc) that appear after a Button in the same container.