0

私はこの行を呼び出してい-makeFirstResponderます:

[self.window makeFirstResponder:libraryViewController.imageBrowser];

imageBrowserは のCaptureBrowserViewサブクラスでありIKImageBrowserView、 は のサブクラスでNSViewあり、 は のサブクラスです。NSResponder

@property (weak) IBOutlet CaptureBrowserView *imageBrowser;
@interface CaptureBrowserView : IKImageBrowserView
@interface IKImageBrowserView : NSView <NSDraggingSource> {
@interface NSView : NSResponder <NSAnimatablePropertyContainer, NSUserInterfaceItemIdentification, NSDraggingDestination, NSAppearanceCustomization, NSAccessibilityElement, NSAccessibility>

しかし、私はこのエラーが発生します:

タイプ「NSResponder *」のパラメーターに「CaptureBrowserView *」を送信する互換性のないポインタータイプ

私は明らかな何かを見落としていますか?それとも、何らかの理由で IKImageBrowserView がファーストレスポンダーになれないのでしょうか?

4

1 に答える 1

1

あなたは実際#import "CaptureBrowserView.h"にファイルにいましたmakeFirstResponder:か?CaptureBrowserViewコンパイラがその時点での前方宣言しか見ていない場合、それが . であることを認識していませんNSResponder

于 2015-11-04T16:04:00.233 に答える