Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/119.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 正在替换操作中的文字字符串:_Ios_Swift - Fatal编程技术网

Ios 正在替换操作中的文字字符串:

Ios 正在替换操作中的文字字符串:,ios,swift,Ios,Swift,有一种方法可以替换swift中的操作:中的纯文本 例如UIBarButtoncode: var barButton = UIBarButtonItem(title: "H", style: .Plain, target: self.someTarget(), action:"someStringAction:") 我认为有一种方法是NSStringFromSelector(Selector(someStringAction()),但问题是我的目标不是self 我可以在目标类中创建一个方法来调用

有一种方法可以替换swift中的
操作:
中的纯文本

例如
UIBarButton
code:

var barButton = UIBarButtonItem(title: "H", style: .Plain, target: self.someTarget(), action:"someStringAction:")
我认为有一种方法是
NSStringFromSelector(Selector(someStringAction())
,但问题是我的目标不是
self

我可以在目标类中创建一个方法来调用上述方法并返回
String
,但我不确定这是正确的方法


问题的关键是:如何避免在调用方法时使用文本字符串?

要么用新的选择器字符串完全替换
UIBarButtonItem
,要么更改
UIBarButtonItem
上的标记。标记表示调用选择器时要执行的特定操作

不知道你想做什么。你能澄清一下吗?我不想用字符串来调用方法。输入错误可以在没有警告的情况下生成。当方法不存在时,我希望在构建时有错误。当您使用选择器时,根据设计没有编译时错误。选择器是非常动态的,它是在运行时调度的。如果您在objective-c中执行了@Selector(something:),您将得到一个错误。我正在寻找类似的东西,但在斯威夫特。如果swift甚至没有选择器(当然还有字符串),我不知道该去哪里找我不明白用新的选择器字符串完全替换是什么意思。