2014-06-10 6 views
23

Basit soru - Swift'i kullanırken XCode'un saat penceresindeki değişkenlerin değerlerini nasıl görüntüleyebilirsiniz?Swift: XCode'un izleme penceresinde görüntülenen değişkenlerin değerlerini nasıl görüntüleyebilirim?

İşte bir örnekte, mdn'nin 2067134273 değerine nasıl sahip olduğunu görmek için henüz izleme penceresinde bunu görmesi mümkün değildir (ObjectiveC.NSObject hiçbir şeye genişletmez).

enter image description here

Bu nedeni olabileceğini düşündüm ki onun isteğe bağlı, ancak onun bu kolay değildir çünkü "İsteğe Bağlı NSString" olarak görüntülenir onss görüntülenmesi bakmak onun o görüntülemek mümkün ve onun bir NSString ?, isteğe bağlı olmayan bir NSString olan nss değeri görüntülenmez.

İşte onların beyanlar var:

var nss:NSString = "NSString" 
var ss = "Swift string" 
var onss:NSString? = "Optional NSString" 

Yani konsolu kullanmak zorunda kalmadan mdn ve UDS değerleri görülebilir ve tercihen otomatik olarak görüntülenmesini yapılabilir nasıl XCode ile ayıklarken? sen bile değiştirmediğini bazı üçüncü taraf çerçevesinden başka türü için ayrıntılarını görmek gerekebilir eğer Yine

enter image description here

:

+0

İfade -l objc 'gibi bir şey denemek - mdn' –

+0

The konsol bunu sevmez, mdn bildirilmemiş bir tanımlayıcı olduğunu söylüyor (ancak po mdn tamam, ancak içeriğini göstermiyor). Anyway Swift ileriye doğru bir adımdır, ancak değerlerini göstermek için yazmak zorunda kalmak, geriye doğru bir IMO adımıdır. – Gruntcakes

+0

Bu, lldb'deki bir hatanın "NSString" yi yazdırmak için akıllı olmadığını söylüyorum. Ayrıca expr -l objc - (id) (0x POINTER_VALUE) ' –

cevap

8

Xcode 6 beta 4 NSString değişkenlerin değerlerini ve NSString? türleri gösterilmektedir daha sonra debugQuickLookObject yöntemini uygulayabilir ve özel açıklama döndürebilirsiniz. Üçüncü taraf lib durumunda, uzantıya sarmalısınız.

extension NSString { 
    func debugQuickLookObject() -> AnyObject { 
     return self 
     // return "Here is debug value: \(self)" 
    } 
} 

sadece izleme penceresinde öğeyi seçin onu önizlemek için ve spacebar çarptı: NSString için öyle olacak

enter image description here

+0

Animasyonlu gif'i nasıl elde ettiniz? Oldukça havalı. – 4thSpace

+1

App LICEcap denir. Ücretsizdir, http://www.cockos.com/licecap/ adresinden indirebilirsiniz. – Keenle

+0

Bu harika bir cevap. Kötü olması için .Net uygulamaları için Visual Studio'da [ara pencere] (https://msdn.microsoft.com/en-us/library/f177hahy.aspx) bir çalışma zamanı hata ayıklama aracı yoktur. Bu hayatı 10 kat daha kolaylaştıracaktır. –