objective-c - @IBAction : Fall Back to Default Behavior

标签 objective-c swift cocoa copy-paste

执行操作时如何回退到默认行为?

例如,我想处理表格行复制,同时保留默认的单元格编辑复制行为。或者处理表格列的 doubleClick ,并且仍然能够通过双击其他列中的单元格进入编辑模式。

@IBAction func copy(_ sender: Any)
{
    guard view.window?.firstResponder == myTable &&
        myTable.editedRow == -1 else
    {
        // TODO: Don't break default behavior
        return
    }

    // Copy selected rows
}

最佳答案

当您添加@IBAction时在代码中,它出现在Interface Builder中下Received ActionsFirst Responder .

First Responder

一种解决方案是连接 Sent Action 你想要处理那个Received Action 而不是直接发送到您的 @IBAction在代码中。这样其他控件就有机会处理该事件。

关于objective-c - @IBAction : Fall Back to Default Behavior,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42946082/

相关文章:

ios - 转换之间的奇怪延迟(UIViewController -> UIViewController)

swift - 我可以将我的类的子类作为 Swift 中的属性吗?

objective-c - 在 Objective-C 中,为什么 arrayWithObjects 不自动将 nil 添加到列表末尾?

cocoa - 使用 NSNumberFormatter 验证字符串

c - 这个条件测试什么?

ios - CALayer 上的隐式动画没有动画

ios - XCode 6.3 错误 : Unknown class in Interface Builder file

macos - NSOutlineView 编译错误 : Semantic Issue 'moveRowAtIndex:toIndex:' is unavailable

objective-c - 变量声明中const关键字定位的意义

ios - 根据内容的 UITextView 高度在 iOS 9 中是错误的