Windows Phone 中的九个补丁映像



在Windows Phone UI设计原则中,MS建议使用纯色矩形或编码渐变作为控制背景,以避免在多屏中不兼容。但在许多要求中,使用图像作为控制背景是必要的。然后,使用9块图像技术。在Android和IO中,它是核心支持,但在WP中缺乏。我尝试通过 3 种方法在 WP 中使用它:

    使用 9 单元格
  1. 网格:将图像剪辑到 9 个补丁中并将它们放入单元格中。它工作正常,但我担心应用程序性能在有很多控制时会降低。

  2. 使用自定义画笔
  3. :只有自定义画笔才能将 9 个补丁的图像绘制为 ImageBrush,但似乎 MS 不允许自定义画笔。

  4. 使用FramworkElement:如矩形,椭圆...我想创建一个框架元素可以绘制一个 9 个补丁的图像。但是,不能使用低级渲染。

如何实施第二种和第三种方法?

我为Windows Phone创建了一个库,它与Android NinePatchDrawable完全相同。你只需要设置一个位图图像.9.png,宽度和高度...完成了!!你有新的图像缩放到你想要的大小。:)享受吧。将来我将添加更多选项:)。

GitHub 链接

您可以使用 WriteableBitmap 来弥补低级渲染和自定义画笔的不足:http://msdn.microsoft.com/en-us/library/system.windows.media.imaging.writeablebitmap(v=vs.95).aspx

这样,您可以完全控制如何呈现背景,然后可以将其分配给单个 Image 控件。但它比"使用带有 9 个图像控件的网格"方法要复杂得多,并且性能改进可能微不足道。

最新更新