Ios 如何将二维码图像传递给apple watch

Ios 如何将二维码图像传递给apple watch,ios,xamarin.forms,watchkit,apple-watch,Ios,Xamarin.forms,Watchkit,Apple Watch,我有一个使用zxing创建的格式为xamarin.forms.image的二维码图像。 我的要求是在apple watch上显示此二维码。此图像保存到全局变量,如下所示 stackQRCode.Children.Add(zXingBarcodeImageView); App.QRCodeImage = zXingBarcodeImageView 我正在尝试使用wcsessionmanager。但是在UpdateApplicationContext中,映像没有被发送。 有人有解决办法吗?实现这

我有一个使用zxing创建的格式为xamarin.forms.image的二维码图像。 我的要求是在apple watch上显示此二维码。此图像保存到全局变量,如下所示

stackQRCode.Children.Add(zXingBarcodeImageView);
 App.QRCodeImage = zXingBarcodeImageView
我正在尝试使用wcsessionmanager。但是在UpdateApplicationContext中,映像没有被发送。
有人有解决办法吗?实现这一点最简单的方法是什么?请提前感谢

将Xamarin表单图像转换为UIImage(反之亦然)的最简单方法是字节[]转换:

ui图像到字节[]:

byte[] byteArray;

using (NSData imageData = originalImage.AsJPEG())
{
  byteArray = new Byte[imageData.Length];
  System.Runtime.InteropServices.Marshal.Copy(imageData.Bytes, byteArray, 0, Convert.ToInt32(imageData.Length));
}
var XamImageSource=ImageSource.FromStream(() => new MemoryStream
            (byteArray));
var bytes = await ImageView.GetImageAsJpgAsync(); //png method also available
字节[]到Xamarin.Forms.ImageSource:

byte[] byteArray;

using (NSData imageData = originalImage.AsJPEG())
{
  byteArray = new Byte[imageData.Length];
  System.Runtime.InteropServices.Marshal.Copy(imageData.Bytes, byteArray, 0, Convert.ToInt32(imageData.Length));
}
var XamImageSource=ImageSource.FromStream(() => new MemoryStream
            (byteArray));
var bytes = await ImageView.GetImageAsJpgAsync(); //png method also available
现在,与Xamarin相反的是,Forms Image/ImageSource不公开任何API来直接从中获取图像流或字节[]。(据我所知)

所以你可以用它来代替

它有一个API来获取如下所示的RawImage

fImageLading到字节[]:

byte[] byteArray;

using (NSData imageData = originalImage.AsJPEG())
{
  byteArray = new Byte[imageData.Length];
  System.Runtime.InteropServices.Marshal.Copy(imageData.Bytes, byteArray, 0, Convert.ToInt32(imageData.Length));
}
var XamImageSource=ImageSource.FromStream(() => new MemoryStream
            (byteArray));
var bytes = await ImageView.GetImageAsJpgAsync(); //png method also available
字节[]到UIImage

 var data = NSData.FromArray(byteData);
 var uiimage = UIImage.LoadFromData(data);

重复@AmadeuAntunes也没有答案..我已经检查过了,我知道让我一起投票吧!你永远不应该像这样改变问题的标题!原始图像为xamarin.forms.image,AsJPEG不可用。获取时出现的错误是“图像不包含AsJPEG的定义,并且没有可访问的扩展名”。请检查我回答的以下部分
,现在捕获的是Xamarin的另一种方式。表单图像/图像源不公开任何API来直接从中获取图像流或字节[]。(据我所知)
您使用什么制作xamarin表单图像?您是否有一个weburl或类似于源图像的内容?您是否可以在问题中添加相关的位,以帮助您了解条形码编写器的写入方法返回给您的是byteArray还是UIImage?