小编Err*_*520的帖子

po Swift String"未解析的标识符"

我在调试Swift Strings时遇到问题

func stringTest() {

    let test1:String =   "test1";
    let test2:NSString = "test2";

    // <-- Breakpoint here

    println(test1);
    println(test2);
}
Run Code Online (Sandbox Code Playgroud)

如果我在这些行之后设置断点并尝试打印test1,则会出现以下错误:

po test1
error: <REPL>:1:1: error: use of unresolved identifier 'test1'
test1
^
Run Code Online (Sandbox Code Playgroud)

但我能够成功打印test2:

po test2
test2
Run Code Online (Sandbox Code Playgroud)

lldb swift

18
推荐指数
2
解决办法
9493
查看次数

符合协议的Swift扩展

我在Swift中创建符合协议的扩展时遇到了问题.

在Objective-C中,我可以创建一个符合协议的类别:

SomeProtocol.h

@protocol SomeProtocol
...
@end
Run Code Online (Sandbox Code Playgroud)

UIView的+类别名称

#import SomeProtocol.h
@interface UIView (CategoryName) <SomeProtocol>
...
@end
Run Code Online (Sandbox Code Playgroud)

我试图通过Swift扩展实现相同的功能

SomeProtocol.swift

protocol SomeProtocol {
    ...
}
Run Code Online (Sandbox Code Playgroud)

UIView扩展

import UIKit
extension UIView : SomeProtocol {
...
}
Run Code Online (Sandbox Code Playgroud)

我收到以下编译器错误:

类型'UIView'不符合协议'SomeProtocol'

protocols ios swift

13
推荐指数
2
解决办法
2万
查看次数

标签 统计

swift ×2

ios ×1

lldb ×1

protocols ×1