如何在addToolTipRect中使用userData

时间:2016-08-28 22:49:59

标签: swift

我正在尝试使用addToolTipRect函数显示工具提示,但我不确定如何传递应该显示的文本。代码不起作用,但我认为代码说明了我想做的事情:

var thedata : [String:AnyObject] = ["txt" : "Text to display"];
addToolTipRect(lsTooltipRects[0], owner: self, userData: &thedata)

...

override func view(view: NSView, stringForToolTip tag: NSToolTipTag, point: NSPoint, userData data: UnsafeMutablePointer<Void>) -> String
{
    let pUserData = UnsafeMutablePointer<[String:AnyObject]>(data).memory
    return pUserData["txt"] // how do I get the text ???

    return "hello" // works fine
}

我不知道如何来回转换[String:AnyObject]?

1 个答案:

答案 0 :(得分:0)

我发现了问题。代码正在运行。问题是数据定义的地方。因为只传递指针,变量将在您使用它时被销毁。所以数据应该全局定义。

很抱歉给您带来不便。