frame.origin.y'ye göre bir NSMutableArray UIViews sıralamak istiyorum, y ile ilk olarak en düşük görüntüyü istiyorum. 2 UIViews aynı kökeni var. Bunun için mevcut bir yöntem var mı?Bir NSMutableArray of UIView, frame.origin.y'ye göre
cevap
NSMutableArray
kodlama vardır birkaç sıralama yöntemleri her yineleme ve her frame.origin.y kontrol edip yapabilir
yourView.subviews
kullanarak subviews dizi alabilirsiniz. Bunlardan birini seçin, sıralama seçiciyi, blok veya işlevi uygulayın ve y
değerlerini karşılaştırın. İşte bloklarını kullanarak bir örnek: Bu frame.origin.y olmasa da
NSComparator comparatorBlock = ^(UIView *obj1, UIView *obj2) {
if (obj1.frame.origin.y > obj2.frame.origin.y) {
return (NSComparisonResult)NSOrderedDescending;
}
if (obj1.frame.origin.y < obj2.frame.origin.y) {
return (NSComparisonResult)NSOrderedAscending;
}
return (NSComparisonResult)NSOrderedSame;
};
[array sortUsingComparator:comparatorBlock];
Eğer o zaman
, ayrıca bir SortDescriptor kullanarak ve anahtar olarak layer.position.y bakarak bunu yapabilirsiniz.
[array sortedArrayUsingDescriptors:@[[[NSSortDescriptor alloc] initWithKey:@"layer.position.y" ascending:YES]]];
Yanıtdan çok daha iyi bir çözüm .. bir yapı olduğu için "frame" üzerinde sıralayabilirsiniz – RyanG
Bu Swift bunu görecektir: Swift için
listOfViews.sortInPlace { CGRectGetMinY($0.frame) < CGRectGetMinY($1.frame) }
İşte tüm :-) Sevgilerimle :-) bir charme gibi
- 1. bir NSMutableArray
- 2. Enum değerleri bir NSMutableArray
- 3. NSMutableArray
- 4. NSMutableArray
- 5. NSMutableArray
- 6. NSMutableArray
- 7. NSMutableArray öğesini başlat: [NSMutableArray array];
- 8. UIView alt görünümü etiketine göre kaldırıldı mı?
- 9. UIView,
- 10. OBJ-C: Bir NSMutableArray
- 11. Bir UIView
- 12. Swift - Cast Int64 Bir NSMutableArray var ve bu deneyin NSMutableArray
- 13. Senkronizasyon UIView animasyonlar
- 14. Bir yenileme için NSMutableArray temizleyin
- 15. UIView
- 16. NSMutableArray addObject, tanınmayan seçici
- 17. NSTimeInterval değerleri bir NSMutableArray içine nasıl depolanır?
- 18. iphone - Dokunmatik UIView bir alt sınıfında bir UIView
- 19. Check Türü of Object ios hızlıı
- 20. Monitor.Pulse Of
- 21. NIB'den bir UIView oluşturun
- 22. IOS bir UIView
- 23. Program aracılığıyla bir UIView
- 24. UIView bir bölgesinden UIImage
- 25. Bir UIView uygulamasında applicationWillEnterForeground yanıtı
- 26. UITableView NSMutableArray öğesinden bölümler bölümlendirme
- 27. NSMutableArray alt satırı
- 28. iOS: Sıralama konumu NSMutableArray
- 29. Kakao yapıları ve NSMutableArray
- 30. Uygulama NSMutableArray öğesinin
İşleri! teşekkürler adam :) bunu bilmiyordu ve çok iyi! – xGoPox
Teşekkürler! Bu gerçekten çok yardımcı. –
Çok yardımcı! Çok teşekkürler –