Xamarin.Forms是一款Microsoft产品,允许从单个共享C#代码库为Android,iOS,Windows和其他应用程序构建本机,跨平台应用程序。
我正在开发 Xamarin Forms 应用程序。 我想保存 mac 地址,我可以获取 mac 地址,但当我从设备设置中检查它时,它会有所不同。 公共静态字符串 getMacAddress() { 字符串
我有一个像月份选择器这样的要求,它只显示月份和年份,而不显示日期。我们如何使用 Xamarin 表单在 IOS 和 Android 平台上实现相同的效果?
如何自动选择Entry、Editor、Label中所有焦点文本?使用跨平台。 Quantity.IsFocused = true; 没有工作:(
我正在开发一个使用 AWS Cognito 进行用户身份验证的 Xamarin 应用程序。我正在尝试实现忘记密码,并且 MFA 设置为使用电子邮件确认码。 然而,当我尝试
如何在SkiaSharp中直接从SVG字符串在屏幕上任意绘制SKPath?
我正在构建一个可以发送和接收skia Sharp绘图的应用程序。 SKPath 被序列化为 SVG 格式并发送。然后接收端必须反序列化并从...
Xamarin.Forms:绑定到 XAML 中属性背后的代码
在 Xamarin.Forms 中,我想将属性背后的代码绑定到 XAML 中的标签。 我找到了很多关于这个主题的答案和网页,但它们都涵盖了更复杂的场景。 这是我的 XAML pa...
Xamarin.Forms 在 Android 12 及更高版本中将图像移动到图库
我知道拍照并将其保存到图库很容易。 受保护的异步任务 TakePhoto() { var storageOptions = new StoreCameraMediaOptions() { 保存到相册 = tr...
在 Android .Net Maui 上禁用 ViewCell 长按加载动画
我想禁用当用户长按 Android 原生 ViewCell 时显示的加载动画。我能够通过执行以下操作来禁用单击时 ViewCell 的突出显示...
Windows.UI.Xaml.Controls.TextBlock.DoubleTapped 事件未触发
在适用于 Android 和 UWP 的 Xamarin.Forms 项目中,我想定义长按 (Android) 和双击(在 UWP 上)的效果。为此目的,我做了所有我发现的事情,定义了适当的 RoutingEff...
编译错误:类型 okio.AsyncTimeout$1 在 Xamarin Forms 项目中定义了多次
我们在 Xamarin Forms 项目中遇到与多次定义 okio.AsyncTimeout$1 类相关的编译错误。我们没有直接在我们的
为什么 Xamarin iOS 徽章在图标上显示 1 并且没有通知?
我的 iOS 徽章通知有问题。当通知到达时,它会定期显示徽章,但当没有通知时,它仍然显示徽章“1” 有什么问题吗...
我有一个 Xamarin 应用程序,该应用程序已在应用程序商店中上线,并且在 IOS 17 及更低版本上运行得非常好。但是当我将 iPhone 从 IOS 17 升级到 IOS 18 beta 版本时。我打开我的
我已将新表单 Xamarin XAML 页面添加到我的项目中。如果我使用视图设计器,我的 Visual Studio 2019 将显示 xaml 文件代码,但不会显示设计的表单。如何在设计模式下查看页面? Page1.xaml 的内容...
从 Visual Studio 2019 部署应用程序时“找不到此可执行文件的有效配置文件”
当我想在我的设备中部署 Xamarin.Forms iOS 应用程序时,出现此错误: 部署错误:无法安装应用程序 'C:\Users\{myuser}\AppData\Local\Temp\Xamarin\HotRestart\Signing\{MyApp}.i...
我正在尝试仅使用 XAML 对每个平台的标签字体使用特定大小。这段代码工作正常: 我正在尝试仅使用 XAML 对每个平台的标签字体使用特定大小。这段代码运行良好: <Label x:Name="DescricaoLabel" Grid.Row="1" Grid.Column="0" HorizontalTextAlignment="Start" Text="{Binding Descricao}" TextColor="#426d76"> <Label.Font> <OnPlatform x:TypeArguments="Font" Android="14" iOS="Micro" /> </Label.Font> </Label> 但是,标签 Label.Font 被标记为已过时。我试过这个: <Label.FontSize> <OnPlatform x:TypeArguments="x:Double" Android="14" iOS="Micro" /> </Label.FontSize> 但是使用标签Label.FontSize由于使用了NamedSize“Micro”,我无法编译。 在 XAML 中使用 double 和 NamedSize 且不使用过时标签的最佳方法是什么? 类型必须是同一类型。在默认尺寸中,您不能同时使用命名尺寸和双倍尺寸。 NamedSize 通过内置静态转换器工作。您可以编写自己的转换器,也许将两者都作为字符串然后进行转换。或者使用带参数的转换器并指定值和类型。 默认的方案无法处理您想要实现的场景。 public class StringToSizeConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { double size; if(double.TryParse(value.ToString, out size)) { //this is a double return size; } // its a named size, so convert the named size to enum NamedSize namedSize; if (Enum.TryParse(value.ToString, true, out namedSize)) { return Device.GetNamedSize(NamedSize.Default, typeof(Label)); } } public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { throw new NotImplementedException(); } } 您可以在下面阅读有关转换器的更多信息: 绑定和集合 如何使用 IValueConverters? 另一种替代方法是在 app.cs 或 app.xaml.cs 中定义命名标签样式,设置字体大小并在 XAML 中使用该样式。在这种情况下,您不需要在 XAML 中使用 OnPlatform,它将位于您的 CS 文件中。 还有另一种解决方法来完成它,首先你需要为标签制作一个样式 <Style x:Key="testStyle1" TargetType="Label"> <Setter Property="FontSize" Value="{OnPlatform iOS=Title, Android=2}" /> </Style> 然后就可以在标签控件中使用它了 <Label Text="Hello World" Style="{StaticResource testStyle1}"/>
Xamarin Forms - 根据设备(即 iPhone / iPad)更改字体大小
嗨,有人知道一种根据显示@UI的设备更改字体大小的方法吗? IE // iphone 5 如果(UIScreen.MainScreen.Bounds.Height == 568) 字体大小 = 12 别的 24像素...
使用 OnPlatform 时无法获取在 ResourceDictionary 中使用的标签的 FontSize
使用时我无法让 FontSize 与 NamedSize 一起使用。 使用 Xamarin.Forms 版本:3.4.0.1008975 在职的 : <Style TargetType="Label"> <Setter Pro...</desc> <question vote="0"> <p>使用 <pre><code><Style TargetType="Label"></code></pre> 时,我无法让 FontSize 与 NamedSize 一起使用。</p> <p>使用 Xamarin.Forms 版本:3.4.0.1008975</p> <p>工作:</p> <pre><code><Style TargetType="Label"> <Setter Property="FontSize" Value="Small" /> </Style> </code></pre> <p>不工作:</p> <pre><code><Style TargetType="Label"> <Setter Property="FontSize"> <Setter.Value> <OnPlatform x:TypeArguments="x:String" Android="Small" iOS="Medium"/> </Setter.Value> </Setter> </Style> </code></pre> <p>我尝试将 TypeArguments 更改为 <pre><code><OnPlatform x:TypeArguments="NamedSize" .../></code></pre> 但没有成功。</p> <p>我正在使用其他属性设置器与 <pre><code><OnPlatform .../></code></pre> 并且它们按应有的方式工作。它只是字体大小。 </p> </question> <answer tick="false" vote="0"> <pre><code><?xml version="1.0" encoding="utf-8" ?> <ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:local="clr-namespace:App67" x:Class="App67.MainPage"> <ContentPage.Resources> <OnPlatform x:Key="textColor" x:TypeArguments="Color"> <On Platform="WinPhone" Value="Red" /> <On Platform="Android" Value="Aqua" /> <On Platform="iOS" Value="#80FF80" /> </OnPlatform> <OnPlatform x:Key="fontSize" x:TypeArguments="Font"> <On Platform="WinPhone" Value="Bold,Large" /> <On Platform="Android" Value="Bold,Large" /> <On Platform="iOS" Value="Bold,Large" /> </OnPlatform> </ContentPage.Resources> <ContentPage.Content> <StackLayout> <Label Text="Check out my style." TextColor="{StaticResource textColor}" Font="{StaticResource fontSize}" /> </StackLayout> </ContentPage.Content> </ContentPage> </code></pre> </answer> <answer tick="false" vote="0"> <p>根据您的控制,这可能是一个解决方法:</p> <pre><code><Style TargetType="Label"> <Setter Property="FontSize" Value="{OnPlatform iOS=Medium, Android=Small}" /> </Style> </code></pre> </answer> </body></html>
应用程序在运行 Android 11 和 12 的 Oppo A52 和 A17 上崩溃
我在 Xamarin 表单上为老年护理行业开发企业移动应用程序。在运行 Android 11 和 12 的 Oppo A52 和 A17 (CPH2477) 上,应用程序将崩溃。在没有任何活动的登录屏幕上...
我有一个 Xamarin 表单项目,我们必须将其迁移到 .NET MAUI,我们需要在该项目中使用白色标签,例如 Xamarin Forms 应用程序中的白色标签 例如在我创建的 Xamarin.Forms 中