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

  • Air_Fooj

    Air_Fooj

    24 NİSAN 2009
  • Disney Pets and Animals

    Disney Pets

    29 ŞUBAT 2012
  • Troy Hunt

    Troy Hunt

    29 EYLÜL 2011