问题标签 [anyobject]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - Swift 中的纯类泛型约束
我试图将泛型类型的变量标记为弱:
如果我不设置任何约束,T
我会得到错误weak cannot be applied to non-class type 'T'
。
如果我只将它与 NSObject 派生类一起使用,这将起作用:
但我也希望能够使用纯 Swift 类。
class
对于协议,可以通过使用关键字来要求实现者是类类型:
使用ClassType
协议,我现在可以将变量标记为弱:
但我不能class
直接将关键字添加到泛型参数:
我可以使协议解决方案适用于所有具有扩展名的 NSObject 派生类:
但是对于纯 Swift 类,没有可以添加此扩展的通用超类。有没有办法在不向ClassType
我想使用X
该类的每个类添加协议的情况下完成这项工作?例如,通用参数的一些特殊限定符,例如class X<T:ThisIsAClass>
?
ios - AnyObject 与 Struct(任何)
我想为我的项目创建一个这样的方法:
但我不能因为CGRect
and CGSize
are struct
s 并且不符合AnyObject
protocol
. 那么,关于如何做到这一点的任何想法?
json - 无法转换“AnyObject”类型的值?到预期的参数类型'[AnyObject]!
我正在使用Hyperoslo 的 swift lib "Sync"将 JSON 用户转换为 Core Data 对象。
但是当用我的 JSON 对象设置这个方法的第一个参数时,我有预编译器错误:
无法转换“AnyObject”类型的值?到预期的参数类型'[AnyObject]!'
如果将我的第一行替换为...
...应用程序崩溃并出现此错误:
无法将“__NSCFDictionary”(0x3884d7c8)类型的值转换为“NSArray”(0x3884d548)。
如何处理?
感谢@Eric.D 的解释,解决了
ios - 从 AnyObject 转换为 CGColor?没有错误或警告
你好 StackOverflow :)
自从升级到 swift 2.0 以来,我一直遇到一个奇怪的问题
我正在尝试设置边框颜色,所以我在写self.layer.borderColor = borderColor as! CGColor
borderColor是一个AnyObject
,而self.layer.borderColor是一个CGColor?
如果我写self.layer.borderColor = borderColor as! CGColor
,我会收到警告
将强制向下转换为“CGColor”作为可选将永远不会产生“nil”
并建议改为使用as?
如果我改为写self.layer.borderColor = borderColor as? CGColor
,我会收到错误
有条件地向下转换为 CoreFoundation 类型“CGColor”将始终成功
只是为了确保我没有遗漏一些东西,我也尝试过写container.layer.borderColor = borderColor as CGColor
,container.layer.borderColor = borderColor
这两个都给出了以下错误:
'AnyObject' 不能转换为 'CGColor';你的意思是用'as!' 强迫沮丧?
只是在使用时使用 XCode 给出的警告运行as!
并不是那么糟糕,但我更愿意让我的代码警告免费。为了实现我真的需要你的帮助。这是我不理解的事情,还是只是我应该报告的 Swift 2.0 中的一个错误。
干杯!
雅各布
java - Swift 泛型等效于 Java 任何类型
在 Java 中,您有时可以使用泛型而不关心实际类型。你能在 Swift 中做到这一点吗?
例如MyClass<AnyObject>
不像MyClass<?>
在 Java 中那样工作。在我希望它能够正常工作。
还有其他方法吗?
ios - 转换任何对象?到 NSDate
我正在尝试从核心数据中获取分数(NSDates)并返回一个日期。如果 coreData 为空,则返回 00:00:00.00,如果不是则显示第一个日期。
我有以下代码:
当我尝试这条线时:
我收到错误“AnyObject?不能转换为 NSDate',当我强制向下转换时,它变为:
我收到错误“致命错误:在展开可选值时意外发现 nil”。
任何帮助,将不胜感激 :)
ios - Swift AnyObject 作为 Dictionary 获取不存在的元素不是 nil
我在 Swift 中遇到了演员表的问题
这里的代码:
在某些情况下,我希望表示 [“结果”] 等于 nil,在这种情况下,当我打印表示 [“结果”] 时,调试器给我 nil,但我仍然通过条件并在日志中显示“结果 = nil”,当它执行下一行它崩溃了致命错误:在展开可选值时意外发现 nil 这很正常,因为我尝试解开一个 nil 值!
但我确实发现,如果我这样做:
它工作得很好
我知道,我知道你们中的一些人会说:你找到了为什么要在 stackoverflow 上发帖的解决方案——我这样做是因为我想了解为什么第一个解决方案不起作用,并且因为我的错误肯定不是特定于这种情况的。
swift - Swift AnyObject 的下标,它是从哪里来的?
在 Swift 中,它如何AnyObject
支持下标,即使是不可下标的类型?例子:
然而,如果 mynumber
被声明为Int
then 它是一个语法错误:
有趣的是,Any
没有下标支持。
ios - 我什么时候应该快速使用 UIButton 的 anyObject?
我什么时候应该快速使用 UIButton 的 anyObject?我正在为我的按钮制作一个 IBAction,该按钮将用于执行更多任务,而不是任务上的任务是切换到下一个视图。
ios - 通过返回的类型填充 prepareForSegue 的destinationViewController
下午好!
我对 Swift 比较陌生,尽管我认为我已经设法将大部分内容都围绕起来,但是我在间接设置 segue 的destinationViewController 时遇到了困难。
我知道destinationViewController 接受AnyObject?但是如何将类作为函数的返回值直接返回到destinationViewController?就像是:
其中 getNextView() 被子类覆盖,其唯一目的是返回对destinationViewController的引用:
XCode 不高兴我在 prepareForSegue() 的一行中使用“连续语句”,我不知道如何解决它,所以任何帮助将不胜感激!
谢谢!
编辑:
对此感到抱歉,但 getNextView() 实际上并没有返回 Optional。刚刚接受并修改了问题。尽管如此,问题仍然存在。