【问题标题】:Why can't my subclass of IKImageBrowserView->NSView->NSResponder be made first responder?为什么我的 IKImageBrowserView->NSView->NSResponder 的子类不能成为第一响应者?
【发布时间】:2015-11-05 00:04:00
【问题描述】:

我有这行电话-makeFirstResponder:

[self.window makeFirstResponder:libraryViewController.imageBrowser];

imageBrowserCaptureBrowserView 类型,是IKImageBrowserView 的子类,NSViewNSResponder 的子类

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

但我收到此错误:

不兼容的指针类型将“CaptureBrowserView *”发送到参数 'NSResponder *'类型的

我是否忽略了一些明显的东西?或者是一个 IKImageBrowserView,由于某种原因,特别无法成为第一响应者?

【问题讨论】:

    标签: objective-c cocoa first-responder imagekit


    【解决方案1】:

    您实际上是否在makeFirstResponder: 的文件中添加了#import "CaptureBrowserView.h"?如果编译器此时只看到CaptureBrowserView 的前向声明,它不知道它是NSResponder

    【讨论】:

    • 太棒了,我想我忽略了一些东西。谢谢!
    猜你喜欢
    • 2016-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多