SORU
11 HAZİRAN 2014, ÇARŞAMBA


RespondsToSelector hızlı karşılığı nedir?

Google'dan araştırdım ama swift karşılığı nedir bulabildiniz respondsToSelector var:.

Bu tek şey bulabildiğim (Swift alternative to respondsToSelector:) değil de ilgili bir olay olarak kontrol varlığı temsilci yok bir temsilci istiyorum yüklenmediğini kontrol etmek için yeni bir API var mı yok üzerinde çalışırken, cihaz ve eğer geri düşmek için bir önceki sürüm apı.

CEVAP
11 HAZİRAN 2014, ÇARŞAMBA


Belirtildiği gibi, Hızlı? isteğe bağlı unwrapper operatörü ile ne elde edebilirsiniz çoğu zaman. Bu bir nesne varsa ve eğer nesne varsa sadece (nil) bir yöntem aramak için izin verir ve bu yöntem uygulanır.

Hala respondsToSelector:, ihtiyaç durumunda hala orada NSObject protokolünün bir parçası olarak.

Eğer respondsToSelector: Swift N-C tipi bir arıyorsanız, o zaman beklediğiniz gibi çalışıyor. Eğer kendi Swıft sınıf üzerinde kullanıyorsanız, sizin sınıf NSObject türetir sağlamak gerekir.

Burada eğer bir seçici yanıt olmadığını kontrol edebilirsiniz Hızlı bir sınıfın bir örnek:

class Worker : NSObject
{
    func work() { }
    func eat(food: AnyObject) { }
    func sleep(hours: Int, minutes: Int) { }
}

let worker = Worker()

let canWork = worker.respondsToSelector(Selector("work"))   // true
let canEat = worker.respondsToSelector(Selector("eat:"))    // true
let canSleep = worker.respondsToSelector(Selector("sleep:minutes:"))    // true
let canQuit = worker.respondsToSelector(Selector("quit"))   // false

Parametre adlarını dışarı bırakmayın önemlidir. Bu örnekte, Selector("sleep::")değilSelector("sleep:minutes:") olarak aynı.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bach Vlogs

    Bach Vlogs

    18 HAZİRAN 2011
  • HouseholdHacker

    HouseholdHac

    6 Kasım 2007
  • Living Waters

    Living Water

    9 AĞUSTOS 2006