2016-07-12 21 views
6

Bu, herhangi bir sorundan başka bir sıkıntı ve kozmetik sorun olmakla birlikte, Xcode'ta otomatik tamamlama ile ilgili bazı tutarlılık sorunları var ve bunun için bir çözümü varsa çok memnun olurum .Otomatik tamamlamada protokol yöntemlerinin iki kez gösterilmesini engelle

public protocol MyProtocol { 
    var variable: String { get } 
    func method() 
} 

Ve MyProtocol benimser ve protokole uyması amacıyla gereklerini uygulayan bir sınıf A:

public class A { ... } 

extension A: MyProtocol { 
    public var variable: String { get { return "String from A." } } 

    public func method() { 
     print("Method called.") 
    } 
} 

bir özellik ve bir yöntemi vardır bir protokol MyProtocol, düşünün

Sorun:

örneğine üyelerini erişirken özellikleri yalnızca bir kez ortaya oysa

, protokol yöntemleri, iki kez ortaya:

herşey kodunda belgelenmiş ise, protokol özellikleri haline ortaya çıkıyor gizli, protokol yöntemleri otomatik tamamlamada görünür kalır. Aynı şey protokol yöntemlerinin varsayılan uygulamaları için de geçerlidir - hala görünür. Bu sorunu daha da tutabilen başka bir şey, örneğin bir örnek ise; Aynı örneği (

Ama: A sınıf bildirilmiş aynı dosyada oluşturulur ve bu örneğinin üyelerinin de aynı dosya içinde erişilir, daha sonra protokol yöntemi otomatik tamamlama kaybolur Şimdi global kapsamda olan) başka bir dosyadan çağrılır, protokol yöntemi otomatik tamamlamada yeniden görüntülenir.

Yani, sorum şu: otomatik tamamlama protokol yöntemlerini nasıl gizleyeceğini bilen var mı?


sürümleri:

Xcode: 7.3 (7D175)

Swift: 2.2

cevap

5

Bu bir hata gibi görünüyor. Geçen yıl rdar://21701167 dosyalandı.

  • çiftleri

  • 3. parti Xcode belge eklentilerden

    çiftleri

  • yan-yan Xcode iki sürümü yükleyerek Xcode belge güncellemeleri kaynaklanan:

    Bu kaynaklanabilir

Nothing sanırım gerçekten. Bu bir tür rahatsız edici. Bazen 3 veya 4 kopyaları alırım.Xcode'un iki sürümünü kullanıyorum ve 3. taraf bir belge eklentisi kullanıyordum.

+0

Girişiniz için teşekkürler! Bu sorun, bu aynı hata altında olabilir, ancak davranış, hata raporunda açıklanandan daha düzensiz görünüyor. Xcode'un iki sürümü yok, Beta sürümü kullanmıyorum ve sorunum özel kapsamda görünmüyor. – xoudini