2010-09-02 38 views
7

Herkesin yazdığı veya bir dokunuşun ortaya çıktığı görünümü konsolda oturum açmak için iyi bir yolla karşılaşıp karşılaşmadığını merak ediyor. Dokunuşları görüyorumEnded: uygulanabilir, ancak benim sorunum gizemli bir şey benim görüşüme dokunmayı engelliyor ve ne olduğunu bilmiyorum. Dokunuşları neyin engellediğini bilmek isterim.iOS - görünümü algılamak için hata ayıklama aracı

Ben konsola giriş yapmak istiyorum:

"Dokunmatik görünümü oluştu: nameOfSomeUIView" "dokunmatik başlangıçta gerçekleştiği görünüm"

cevap

14

Her UITouch nesne olarak tarif bir görünüm özelliğine sahiptir UIWindow alt sınıfını ve sendEvent yöntemini geçersiz kılabilirsiniz. sendEvent uygulamanızda [super sendEvent: event] numaralı telefonu arayabilir ve bundan sonra olaya ait tüm dokunuşların görünüm özelliklerini inceleyebilirsiniz.

Genel bir ipucu olarak: UITouches beklediğiniz gibi davranmıyorsanız, görünümünüzün hitTest yöntemini kontrol edin. Hangi görünümün dokunuşları alması gerektiğini görmek için bu yöntemi geçersiz kılabilirsiniz.

+0

UIWindow alt sınıfını aldım ve Uygulama Temsilcisindeki alt sınıfı türünü kullandım. Alt sınıfta - (void) sendEvent: (UIEvent *) olayını uyguladım, ancak asla çağrılmadı. – sol

+0

Aslında bunu şimdi çiziyorum, şimdi gönderelim. Hangi görünüme dokunulduğunu nasıl bulabilir misiniz? – sol

+0

UIEvent'in dokunuşunu nasıl çekeceğinizi anladı. Dokunduğum görüşün hafıza adresini alabilirim. Adını bulabilirsem iyi olur. – sol

İlgili konular