0

我对 Objective-C 非常缺乏经验,而且还很陌生,我想问一个有条理的问题。我想做的是:

  1. 加载用户提供的图像以显示在屏幕上。用户应该能够缩放。所以对我来说最好使用 NSScrollView 来绘制图像。我对行为有其他要求
  2. 加载图像时,它应该适合 NSScrollView 而不会在任一方向上拉伸。
  3. 当用户现在更改 NSScrollView 的大小(通过更改窗口的大小)时,应该适当地调整图像的大小。
  4. 如果用户在某些时候缩放图像,则在更改 NSScrollView 的大小时不应调整其大小。如果图像被缩放以适应 NSScrollView(意味着加载时),则应在更改 NSScrollView 的大小时再次调整其大小。我认为这与 Apple 的预览应用程序中的行为相同。

我想这对于有经验的程序员来说很容易实现,但我有一些问题。这是我尝试过的。

我通过加载图像

[[NSImage alloc] initWithContentsOfFile:imagePathStr];

单击按钮。我还可以通过在绘制之前更改图像的大小来显示它以很好地适应(加载时)到 NSScrollView 中。但是我无法在调整大小或缩放时获得正确的行为(我使用 NSScrollView biuld-in 缩放功能)。有人可以提供某种需要执行以实现我想要的关键点的列表吗?还是有人宁愿看到我的显式代码来告诉我我做错了什么?

4

0 回答 0