SORU
28 Ocak 2010, PERŞEMBE


Tüm subviews kaldırmak?

Benim app kök görüntülemek kumandası döndüğünde, viewDidAppear: yöntemi tüm subviews kaldırmak için ihtiyacım var.

Bunu nasıl yapabilirim?

CEVAP
28 Ocak 2010, PERŞEMBE


Düzenleme:cocoafan sayesinde Bu durum NSView UIView farklı işlerle gerçeği ile karmaşık. NSView (masaüstü Mac kalkınma) için, basitçe aşağıdaki gibi kullanabilirsiniz:

[someNSView setSubviews:[NSArray array]];

UIView (yalnızca iOS geliştirme), güvenli bir şekilde subviews özelliği döndürür, çünkü makeObjectsPerformSelector: kullanabilirsinizkopyalasubviews: dizinin

[[someUIView subviews]
 makeObjectsPerformSelector:@selector(removeFromSuperview)];

Teşekkür ederim Tommy işaret makeObjectsPerformSelector: görünür değiştirmek için subviews dizi süre olarak numaralandırılmış (öyle istiyor NSView ama UIView).

Daha fazla ayrıntı için this SO question bakın lütfen.

Not:Bu iki yöntemden birini kullanarak ana görünüm içeren görünüm her kaldıracaktırve onları serbest bırakıneğer başka bir yerde. istediğiniz gibi değilse removeFromSuperview: Apple'ın belgeleri

Eğer alıcının superview değil nil ise, bu yöntem, alıcı serbest bırakır. Eğer bu görünüm yeniden kullanmayı planlıyorsanız, bu yöntem çağırmadan önce korumak ve başka bir görünüm hiyerarşisi ekledikten sonra onunla işiniz bittiğinde uygun olarak serbest bırakmak için emin olun.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ASUS Campus Life

    ASUS Campus

    18 Mart 2013
  • MrRandomSong

    MrRandomSong

    29 Kasım 2009
  • VitalyzdTv

    VitalyzdTv

    7 AĞUSTOS 2011