我正在尝试使用以下 axml 加载我的资源中的 svg(设置为 Embeddded Resource VS2019):
<ffimageloading.cross.MvxCachedImageView
android:layout_width="36dp"
android:layout_height="36dp"
local:MvxBind="ImagePath res:svg.passenger" />
但什么也没显示。它占用 36x36 空间,但无法加载 svg
在调试输出中它显示:
2019-09-12 13:38:13 [错误] (MvxBind) 视图绑定 MvxException 期间引发的异常:意外字符:在 targetProperty 文本 res:svg.passenger 中的位置 3 MvvmCross.Binding.Parse.PropertyPath.MvxPropertyPathParser.ParseNextToken () [0x00036] 在 C:\projects\mvvmcross\MvvmCross\Binding\Parse\PropertyPath\MvxPropertyPathParser.cs:70 在 MvvmCross.Binding.Parse.PropertyPath.MvxPropertyPathParser.Parse (System.String textToParse) [0x00009] 在 C: \projects\mvvmcross\MvvmCross\Binding\Parse\PropertyPath\MvxPropertyPathParser.cs:39 09-12 13:38:13.606 I/mono-stdout(18939): 2019-09-12 13:38:13 [错误] (MvxBind ) 视图绑定期间抛出异常 MvxException: Unexpected character : at position 3 in targetProperty text res:svg.passenger
我也试过:
<ffimageloading.cross.MvxCachedImageView
android:layout_width="36dp"
android:layout_height="36dp"
local:MvxBind="ImagePath res://svg.passenger" />
<ffimageloading.cross.MvxCachedImageView
android:layout_width="36dp"
android:layout_height="36dp"
ImagePath="res:svg.passenger" />
和
<ffimageloading.cross.MvxCachedImageView
android:layout_width="36dp"
android:layout_height="36dp"
ImagePath="res://svg.passenger" />
我很确定 svg 没有损坏,因为如果我使用 XamSvg 它会显示得很好
<XamSvg.SvgImageView
local:svg="res:svg.passenger"
local:colorMapping="4C7BC1=AAAAAA"
android:layout_width="36dp"
android:layout_height="36dp" />
更新:
<ffimageloading.cross.MvxCachedImageView
android:gravity="right"
android:layout_width="36dp"
android:layout_height="36dp"
local:MvxBind="ImagePath 'res:passenger.svg'" />
现在导致不同的异常:
09-12 14:42:56.806 D/skia (23916): --- 无法创建带有消息“未实现”的图像解码器图像加载失败:passenger.svg System.BadImageFormatException:FFImageLoading.PlatformImageLoaderTask
1[TImageView].GenerateImageFromDecoderContainerAsync (FFImageLoading.IDecodedImage
1 [TNativeImageContainer ] 解码,FFImageLoading.Work.ImageInformation imageInformation, System.Boolean isPlaceholder) [0x000ba] 在 C:\projects\ffimageloading\source\FFImageLoading.Droid\Work\PlatformImageLoadingTask.cs:221 09-12 14:42:56.810 D/skia (23916):---无法使用消息“未实现”创建图像解码器 09-12 14:42:56.849 I/mono-stdout(23916):图像加载失败:passenger.svg 09-12 14:42:56.850 I /mono-stdout(23916): System.BadImageFormatException: FFImageLoading.Work.ImageLoaderTask 中的位图无效3[TDecoderContainer,TImageContainer,TImageView].GenerateImageAsync (System.String path, FFImageLoading.Work.ImageSource source, System.IO.Stream imageData, FFImageLoading.Work.ImageInformation imageInformation, System.Boolean enableTransformations, System.Boolean isPlaceholder) [0x002e2] in C:\projects\ffimageloading\source\FFImageLoading.Common\Work\ImageLoaderTask.cs:360 at FFImageLoading.Work.ImageLoaderTask
3[TDecoderContainer,TImageContainer,TImageView].RunAsync()[0x0047c]在C:\projects\ffimageloading\source\FFImageLoading.Common\Work\ImageLoaderTask.cs:643