我是Xcode的新手。我想将下面的Objective-C代码转换成Swift等效。Swift等效的目标c代码ActionStringDoneBlock
ActionStringDoneBlock done = ^(ActionSheetStringPicker *picker, NSInteger selectedIndex, id selectedValue) {
if ([sender respondsToSelector:@selector(setText:)]) {
[sender performSelector:@selector(setText:) withObject:selectedValue];
}
};
下面是我的工作,但有错误的(ID了selectedValue)和sender.performSelector( “的setText:” withObject:了selectedValue)
let done: ActionStringDoneBlock = {(picker: ActionSheetStringPicker!, selectedIndex: NSInteger!, selectedValue : AnyObject) in
if(sender.respondsToSelector("setText:"))
{
sender.performSelector("setText:", withObject: selectedValue)
}
}
我该如何解决这个问题?提前致谢。
你可能需要看看_optional chaining_这里:https://developer.apple.com/library/prerelease/mac/documentation/Swift/Conceptual/Swift_Programming_Language/OptionalChaining.html,这将有助于你理解如何将_Objc_这样的片段转换为_Swift_。 – holex 2014-09-02 09:26:29