<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="Test.Views.Activities.ActivityMapList"
xmlns:maps="clr-namespace:Microsoft.Maui.Controls.Maps;assembly=Microsoft.Maui.Controls.Maps"
xmlns:sensors="clr-namespace:Microsoft.Maui.Devices.Sensors;assembly=Microsoft.Maui.Essentials"
xmlns:ios="clr-namespace:Microsoft.Maui.Controls.PlatformConfiguration.iOSSpecific;assembly=Microsoft.Maui.Controls"
ios:Page.UseSafeArea="False"
Shell.NavBarIsVisible="False"
Style="{StaticResource Key=DefaultPage}">
<ContentPage.Content>
<StackLayout>
<maps:Map
VerticalOptions="FillAndExpand"
HorizontalOptions="FillAndExpand">
<x:Arguments>
<MapSpan>
<x:Arguments>
<sensors:Location>
<x:Arguments>
<x:Double>36.9628066</x:Double>
<x:Double>-122.0194722</x:Double>
</x:Arguments>
</sensors:Location>
<x:Double>0.01</x:Double>
<x:Double>0.01</x:Double>
</x:Arguments>
</MapSpan>
</x:Arguments>
</maps:Map>
</StackLayout>
</ContentPage.Content>
</ContentPage>
Run Code Online (Sandbox Code Playgroud)
(https://i.stack.imgur.com/7CBIp.jpg)
StackLayout 或 Grid 内的地图控件,iOS 的 SafeArea 为 false,如图所示。你有什么解决办法吗?
(https://i.stack.imgur.com/q0TjO.jpg)
我需要在地图上使用网格或堆栈布局
小智 6
默认情况下.NET MAUI 将考虑安全区域。所以使用特定于平台的UseSafeArea就是禁用安全区域。目前,将 UseSafeArea 设置为 false 不会改变行为(尽管应该如此),这是一个错误。另请参阅 MAUI github 上的问题:https ://github.com/dotnet/maui/issues/5856
您还可以设置 IgnoreSafeArea 属性来实现相同的目的。但是,它不再在 .NET 7 中工作,请参阅以下问题: https: //github.com/dotnet/maui/issues/12823
要解决您的问题,您需要添加IgnoreSafeArea="True"到 Grid 或 StackLayout以及 ios:Page.UseSafeArea="False"页面中。这应该不是必需的,但这是对我有用的解决方法。
有关在 iOS 上禁用安全区域的文档可以在此处找到: https: //learn.microsoft.com/en-us/dotnet/maui/ios/platform-specifics/page-safe-area-layout ?view=net-maui- 7.0
| 归档时间: |
|
| 查看次数: |
3486 次 |
| 最近记录: |