0

我有一个要打印的自定义 NSView 子类。我有一个控制器运行以下代码:

MyCustomView *printableView = [[MyCustomView alloc] init];
NSPrintOperation *po = [NSPrintOperation printOperationWithView:printableView];
[po runOperation];

当我设置断点时,此代码会运行,并且 NSView 中的自定义分页方法(knowsPageRange:rectForPage:)会运行,但视图的drawRect:方法永远不会被调用。它显示打印对话框,但它打印的只是空白页。

为什么我的drawRect:方法永远不会被调用?我必须先做一些设置吗?

4

1 回答 1

2

NSView为is指定的初始值设定项-initWithFrame:。虽然MyCustomView用 初始化是可以的-init,但它的实现-init应该调用[super initWithFrame:someRect]. 是这样做的吗?

换句话说,您的视图是否有框架矩形?

于 2012-05-16T09:33:11.303 回答