xou*_*ini 6 xcode autocomplete swift
这比其他任何事情更令人烦恼和美化问题,但Xcode中的自动完成存在一些一致性问题,如果有人有解决方案我会非常感激.
考虑一个协议MyProtocol,它具有属性和方法:
public protocol MyProtocol {
var variable: String { get }
func method()
}
Run Code Online (Sandbox Code Playgroud)
并且为了符合协议A而采用MyProtocol并实现要求的类:
public class A { ... }
extension A: MyProtocol {
public var variable: String { get { return "String from A." } }
public func method() {
print("Method called.")
}
}
Run Code Online (Sandbox Code Playgroud)
问题:
访问实例的成员时A,协议方法显示两次,而属性只显示一次:
如果所有内容都记录在代码中,则很明显协议属性会被隐藏,而协议方法在自动完成中仍然可见.这同样适用于协议方法的默认实现 - 仍然可见.
使这个问题更加奇怪的另一件事是,如果A在声明类的同一文件中创建了一个eg实例,并且该实例的成员也在同一个文件中访问,那么协议方法将从自动完成中消失:
但是,如果从另一个文件调用相同的实例(现在在全局范围内),则协议方法会重新出现在自动完成中.
所以,我的问题是:有人知道如何从自动完成隐藏重复的协议方法吗?
版本:
Xcode: 7.3 (7D175)
Swift: 2.2
这似乎是一个错误.rdar:// 21701167去年提交.
可能是由于:
来自Xcode文档更新的重复项
与第三方Xcode文档插件重复
并排安装两个版本的Xcode
这是任何人的猜测.这有点烦人.有时我会得到3或4个重复.我使用的是两个版本的Xcode,而我使用的是第三方文档插件.
| 归档时间: |
|
| 查看次数: |
604 次 |
| 最近记录: |