2010-03-30 43 views
0

我想在drawRect:中画出15张图片,但我能找到的最大的图片是NSDrawNinePartImage()我想要4个角落,顶部/底部填充以及它们之间的3行(两边填充和中心填充)用Cocoa平铺超过9张图片

这里推荐什么? NinePart + 2 * ThreePart?或者是其他东西?

+0

我想你应该添加一些更详细的这个问题。不知道你想要画什么,很难知道如何回答它。 – Alex 2010-03-30 21:46:49

+0

对不起,没有添加一些细节。我现在加了他们。 – 2010-03-31 10:45:07

回答

1

NSDrawNinePartImage是用于绘制一个单独的东西,它分为九个对齐的部分,如井字棋/十字交叉棋盘。

该主要用例是圆角矩形UI元素,例如按钮。您将有四个固定尺寸的边角,四个单轴拉伸边和一个双轴拉伸中心。

这不符合你所描述的内容。三个中心列?

如果两个额外的列应该水平尺寸固定,然后将每个角落和每边的每个图像结合到一个单一的图像。然后正常使用NSDrawNinePartImage

如果两个额外的列是中间列的一部分,所以应该水平拉伸,那么我建议您从NSCustomImageRep子类中使用NSDrawThreePartImage,并为三个中间列部分图像中的每一个使用该子类的实例。然后正常使用NSDrawNinePartImage

(替代“行”为“列”和“垂直”为“水平”,在前三段,如果你想。)

+0

谢谢。我会看看NSCustomImageRep给我什么。 – 2010-03-31 10:44:47

+0

它不会给你任何东西。这正是它说的:一个*定制*图像代表。你继承它,然后你实现它。 – 2010-03-31 15:44:15