我是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