【问题标题】:Xamarin ImageSource.FromStream(Func<Stream>) why is the parameter not just Stream but Func<Stream>?Xamarin ImageSource.FromStream(Func<Stream>) 为什么参数不只是 Stream 而是 Func<Stream>?
【发布时间】:2020-09-04 08:54:22
【问题描述】:

我认为标题总结了这一点。我正在尝试使用流在 Xamarin 中设置图像的来源,但该方法要求 Func&lt;Stream&gt; 作为参数。我可以用一种方法包装流,但我真的不知道这是否会导致未来的问题。总之,我想使用流在 Xamarin 中设置图像的来源,但我不知道也找不到,该怎么做。

【问题讨论】:

    标签: c# xamarin xamarin.forms stream


    【解决方案1】:

    这种方法通常用于一些延迟加载的目的。 这意味着,Stream 在将其传递给函数时不会被访问。 相反,获取/创建Stream 的函数被保存并在需要时使用。

    例如对于图像,它可能是图像应该出现在屏幕上的时间(以防止在图像不可见时消耗资源)。

    因此,最好创建将创建新Stream 的函数,而不是将打开的流保存在内存中。

    例子:

    ImageSource.FromStream(() => File.OpenRead(path));
    

    【讨论】:

      猜你喜欢
      • 2012-01-14
      • 2021-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-09
      • 2010-10-22
      相关资源
      最近更新 更多