我是MAUI的新手,所以请耐心等待。**“系统不支持异常:“不知道Microsoft.Maui.Graphics. Color '”当我尝试在Samsung(Android)上开始调试应用程序时。当我使用模拟器(Pixel 5 - API 31,Android 12.0)运行它时,我没有任何错误。
正如您在所附代码中看到的,我尝试返回类型为Android.Graphics.Color.ParseColor(Color.FromRGB(0,180,0).ToHex())的对象;**希望错误会消失。但出现了以下错误:系统不支持异常:不知道安卓、毛伊岛、图形、颜色
请,我可以做些什么来摆脱错误,并能够测试应用程序在三星手机以及?谢谢
在应用程序中,我使用的Color对象如下:
public class Aditiv
{
[PrimaryKey, AutoIncrement]
public int ID { get; set; }
public string Cod { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public int CategoryId { get; set; }
//public Color BackgroundRow { get; set; }
public Color Culoare
{
get
{
switch (CategoryId)
{
//case 1:
// return Android.Graphics.Color.ParseColor(Color.FromRgb(0, 180, 0).ToHex());
// //return Android.Graphics.Color.ParseColor("#00FF00");
//case 2:
// return Android.Graphics.Color.ParseColor(Color.FromRgb(255, 200, 0).ToHex());
// //return Android.Graphics.Color.ParseColor("#FFAA00");
//case 3:
// return Android.Graphics.Color.ParseColor(Color.FromRgb(200, 0, 0).ToHex());
// //return Android.Graphics.Color.ParseColor("#FF0000");
//default:
// return Android.Graphics.Color.ParseColor(Color.FromRgb(0, 0, 0).ToHex());
// //return Android.Graphics.Color.ParseColor("#000000");
case 1:
return Color.FromRgb(0, 180, 0);
case 2:
return Color.FromRgb(255, 200, 0);
case 3:
return Color.FromRgb(200, 0, 0);
default:
return Color.FromRgb(0, 0, 0);
}
}
set { }
}
}
1条答案
按热度按时间zaq34kh61#
是的,正如Jason所说,您不能在共享代码中使用Android特定的类。
关于如何在maui中使用Color类,您可以查看文档Colors。
在maui中,可以使用以下静态方法创建Color对象:
Color.FromRgb
从范围从0到1的浮点RGB值。Color.FromRgb
从范围从0到1的双RGB值中选择。Color.FromRgb
从范围为0到255的字节RGB值。Color.FromInt
从0到255范围内的整数RGB值。Color.FromRgba
从范围为0到1的浮点RGBA值中提取。Color.FromRgba
从范围为0到1的双RGBA值中提取。Color.FromRgba
从0到255的字节RGBA值中提取。Color.FromRgba
从0到255范围内的整数RGBA值。Color.FromRgba
从基于字符串的十六进制值转换为“#RRGGBBAA”或“#RRGGBB”或“#RGBA”或“#RGB”,其中每个字母
对应于十六进制数字,表示字母、红色、绿色和
蓝色通道。
Color.FromHsla
来自浮动HSLA值。Color.FromHsla
来自双倍HSLA值。Color.FromHsv
从浮动HSV值(范围从0到1)。Color.FromHsv
从范围从0到255的整数HSV值中提取。Color.FromHsva
来自整数HSV值。Color.FromInt
从按(B + 256 *(G + 256 *(R + 256 * A)))。
Color.FromUint
,该值来自按照(B + 256 *(G + 256 *(R + 256 * A)))计算的uint值。Color.FromArgb
从基于字符串的十六进制值转换为“#AARRGGBB”或“#RRGGBB”或“#ARGB”或“RGB”,其中每个字母
对应于十六进制数字,表示字母、红色、绿色和
蓝色通道。