4

ユーザーがズームできるNSScrollViewにNSViewが埋め込まれているプログラムを書いています。ユーザーがMacBookAirと新しいユニボディMacBooks/MacBooks Pro、およびSafariやiPhotoなどのアプリケーションでサポートされているマルチタッチピンチジェスチャを使用してビューをズームできるように設定したいと思います。私はAppleのドキュメントを調べましたが、これを行う方法がわかりません。

  1. これは、Mac OS X 10.5 Leopardで公開されているAPIを使用してサポートされていますか?
  2. そうでない場合、プライベートAPIはどの程度「悪い」のでしょうか(たとえば、宣言されていない定数なのか、まったく新しいメソッドのセットなのか)。
4

1 に答える 1

12

編集: Snow Leopardは、ジェスチャーとマルチタッチでサポートされているAPIを追加します。SnowLeopardのAppKitリリースノートを参照してください。⌘Fは「ジェスチャー」と「マルチタッチ」(原文のまま)を表します。以下のものを使用した場合、それらはかなり見覚えがあるように見えますが、おそらくいくつかの細かい違いがあるので、とにかく新しいドキュメントを読んでください。


これは、Mac OS X 10.5 Leopardで公開されているAPIを使用してサポートされていますか?

いいえ。10.5.0はそれをまったくサポートしていません。10.5.1から10.5.6では、文書化されていないメソッドを実装できます。

そうでない場合、プライベートAPIはどの程度「悪い」のでしょうか(たとえば、宣言されていない定数なのか、まったく新しいメソッドのセットなのか)。

悪くない、全く。ビューに文書化されていないイベントメソッドを実装する必要があります。あなたがメソッドを実装しているので、Appleがメソッドを変更してもクラッシュしないはずです。発生するのは、機能が動作を停止することだけです。

ただし、イベントから絶対(デルタではない)倍率または回転を取得する場合、それらはまだ文書化されていないイベントのメソッドであるため、メッセージでこれらのメッセージを保護しrespondsToSelector:、慎重に範囲チェックを実行する必要があります。メソッドの戻り値。

于 2009-01-31T18:50:41.610 に答える