草庐IT

sa_instance_state

全部标签

ios - 单击按钮时 Swift "unrecognized selector sent to instance"

这个问题在这里已经有了答案:Swiftunrecognizedselectorsenttoinstance-WhatamImissing?(1个回答)关闭5年前。我试图让一个按钮点击工作,但我得到的只是下面的错误。这是关键代码letbutton=UIButton(frame:CGRect(x:0,y:0,width:200,height:40))button.center=CGPoint(x:260,y:220)button.setTitle(NSLocalizedString("READONLINE",comment:"Button"),for:.normal)button.back

ios - swift AVAudioEngine 崩溃 : player started when in a disconnected state

所以我下面的代码应该以更高的音调一遍又一遍地重播chimes.wav文件,但由于底部的错误而崩溃。谁能找到导致此错误的原因?importUIKitimportAVFoundationclassaboutViewController:UIViewController{varaudioEngine:AVAudioEngine=AVAudioEngine()varaudioFilePlayer:AVAudioPlayerNode=AVAudioPlayerNode()overridefuncviewDidLoad(){super.viewDidLoad()//Doanyadditionals

ios - Swift:使用协议(protocol)扩展导致 "unrecognized selector sent to instance"

我正在尝试向所有符合MyProtocol协议(protocol)的UIViewController添加点击功能。下面是我的做法:importUIKitprotocolMyProtocol:class{varfoo:String?{getset}funcbar()}extensionMyProtocolwhereSelf:UIViewController{funcbar(){print(foo)}}classTestViewController:UIViewController,MyProtocol{varfoo:String?overridefuncviewDidLoad(){supe

ios - 符合 Codable 协议(protocol)的类因 encodeWithCoder : unrecognized selector sent to instance 而失败

我知道有几个与此类似的问题,它们往往都围绕着未正确遵守协议(protocol)的类展开,但这不应该是这里的直接问题。以下是目前给我这个问题的代码的浓缩版:enumBinary:Int{casea=0caseb=1casec=9}finalclassMyClass:NSCoder{varstring:String?vardate:Date?varbinary:Binary=.coverrideinit(){}enumCodingKeys:CodingKey{casestring,date,binary}}extensionMyClass:Codable{convenienceinit(f

swift - setTitle(_ title : String? , for state : UIControlState) where is . 正常状态?

这个问题在这里已经有了答案:UIControlState.NormalisUnavailable(4个答案)关闭6年前。我正在使用Xcode8上的iOS10将我的应用程序更新到Swift3我得到一个错误:Btn.setTitle('str',forState:.Normal).Normal不再是UIControlState的枚举类型。我应该为此状态使用哪种类型的UIControlState?Apple枚举现在定义为publicstructUIControlState:OptionSet{publicinit(rawValue:UInt)publicstaticvarhighlighte

swift - 无法将 Swift 4 字符串传递给 Obj-C++ -[_SwiftValue dataUsingEncoding :]: unrecognized selector sent to instance

我有一些像这样的Objective-C++代码://header@interfaceMyObjcClass-(void)myMethod:(NSString*)text;@end//implementation@implementationMyObjcClass-(void)myMethod:(NSString*)text{someInternalObject->useWstring(nsStringToWstring(text))}std::wstringnsStringToWstring(constNSString*text){NSData*data=[textdataUsingE

swift - 在序列中使用闭包作为 'state'(状态 :next:): function mis-use or Swift limitation?

背景我们可以使用闭包作为inout参数:funcmutate(_closure:inout()->Int){letnum=closure()closure={return2*num}}varclosure:()->Int={return21}print(closure())//21mutate(&closure)print(closure())//42问题但是,当我尝试使用闭包作为全局sequence(state:next:)function中的(初始)state参数时,系统提示我出现了一些奇怪的错误(与通常的“公共(public)错误”不同)和堆栈跟踪。//dummyexamplen

swift - 将 didSet 添加到 @State var 后如何修复 Xcode 错误 "Segmentation fault: 11"

我想向SwiftUI的View结构的参数添加一个“didSet”函数,但每次我尝试构建应用程序时,我都会收到“段错误:11”错误。我尝试重命名参数,但没有任何反应。我也尝试将其设置为Optional,但因为它是@State,所以没有用。我能做什么?@Statevartext:String{didSet{print(oldValue,text)}} 最佳答案 尝试为您的var添加一个默认值,这在定义@Statevar时是必需的。@Statevartext:String=""{didSet{print(oldValue,text)}}

swift - 隐式公共(public)访问 (Bool) 内部类型 'Builtin.Int1' : runtime exception if appending instances of 'Int1' to an array

问题我知道我可能不应该摆弄内置类型,但我很好奇,Builtin.Int1类型是否真的可以公开访问,如下所示?如果是这样,为什么将它用作数组元素会导致Swift崩溃?我很好奇,因为我从来没有遇到过我自己无法存储在数组中的自定义类型(但我猜内置类型与我可以使用“构建自己的类型不同”公共(public)swift”)。我使用的是Swift2.2和Xcode7.3。详情查看swift/stdlib/public/core/Bool.swift的源代码,我们注意到我们可以隐式访问内部类型Builtin.Int1(1位整数),它构成了Swift中Bool类型的基础。publicstructBool

ios - NSNumberFormatter.numberFromString() 为 ar-SA 语言环境返回 nil

我正在尝试使用NSNumberFormatter为NSNumberFormatterStyle.DecimalStyle格式化所选语言环境的UILabel文本,并将格式化程序的语言环境设置为ar-SA。当UILabel文本中有大量数字被转换为E记数法(科学计数法),例如“1e9”、“2.3456e24”等时,numberFromString()为ar-SA语言环境返回nil。但是,它适用于其他语言环境。@IBOutletweakvardisplayText:UILabel!letformat=NSNumberFormatter()format.numberStyle=NSNumberF