Here is my XAML. This ContentView is inside an AbsoluteLayout, but I don't think that matters. The idea is to have a frame with a list view, and a darkened background around it. I want to receive Overlay_Tapped if the user clicks outside of the Frame.
In iOS, SpinnerList_ItemSelected is never called. Instead, Overlay_Tapped is, even if the user clicks inside the Frame. In Android everything is fine.
I tried setting InputTransparent="False" in the Frame, ListView, and even the ViewCell. Does not help. What helps is setting NumberOfTapsRequired="2" in the TapGestureRecognizer, but that's obviously not my intention.
Help?
<ContentView
x:Name="SpinnerOverlay"
AbsoluteLayout.LayoutBounds="0,0,1,1"
AbsoluteLayout.LayoutFlags="All"
IsVisible="False"
InputTransparent="False"
BackgroundColor="{x:Static engine:LmcColor.overlay}">
<Frame
OutlineColor="Black"
Padding="10,10,10,10"
BackgroundColor="White"
HorizontalOptions="Center"
VerticalOptions="Center">
<ListView
x:Name="SpinnerList"
HorizontalOptions="Center"
VerticalOptions="Center"
HasUnevenRows="False"
SeparatorColor="Transparent"
ItemSelected="SpinnerList_ItemSelected">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<ContentView
Padding="5,0,5,0"
BackgroundColor="{Binding BackColor}">
<Label
Text="{Binding ItemText}"
Style="{StaticResource StandardStyle}"/>
</ContentView>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</Frame>
<ContentView.GestureRecognizers>
<TapGestureRecognizer Tapped="Overlay_Tapped"/>
</ContentView.GestureRecognizers>
</ContentView>