Özel UITableView hücrelerimi düzenlemek için programlı olarak otomatik düzen kısıtlamaları kullanıyorum ve hücre boyutlarını doğru şekilde tanımlıyorum tableView:heightForRowAtIndexPath:
Bu iOS6 sadece para cezası çalışıyor ve öyle bakmak yanı -iOS7 içinde cezası
ANCAK uygulamayı iOS7'de çalıştırdığımda, konsolda gördüğüm türden bir mesaj:
Break on objc_exception_throw to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKit/UIView.h> may also be helpful.
2013-10-02 09:56:44.847 Vente-Exclusive[76306:a0b] Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want. Try this: (1) look at each constraint and try to figure out which you don't expect; (2) find the code that added the unwanted constraint or constraints and fix it. (Note: If you're seeing NSAutoresizingMaskLayoutConstraints that you don't understand, refer to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints)
(
"<NSLayoutConstraint:0xac4c5f0 V:|-(15)-[UIImageView:0xac47f50] (Names: '|':UITableViewCellContentView:0xd93e850 )>",
"<NSLayoutConstraint:0xac43620 V:[UIImageView:0xac47f50(62)]>",
"<NSLayoutConstraint:0xac43650 V:[UIImageView:0xac47f50]-(>=0)-[UIView:0xac4d0f0]>",
"<NSLayoutConstraint:0xac43680 V:[UIView:0xac4d0f0(1)]>",
"<NSLayoutConstraint:0xac436b0 V:[UIView:0xac4d0f0]-(0)-| (Names: '|':UITableViewCellContentView:0xd93e850 )>",
"<NSAutoresizingMaskLayoutConstraint:0xac6b120 h=--& v=--& V:[UITableViewCellContentView:0xd93e850(44)]>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0xac43650 V:[UIImageView:0xac47f50]-(>=0)-[UIView:0xac4d0f0]>
Ve gerçekten de bu listede istemediğim bir kısıtlama var:
"<NSAutoresizingMaskLayoutConstraint:0xac6b120 h=--& v=--& V:[UITableViewCellContentView:0xd93e850(44)]>"
ve translatesAutoresizingMaskIntoConstraints
özelliğini contentView
NO => olarak ayarlayamıyorum , tüm hücreyi bozar.
44 varsayılan hücre yüksekliğidir, ancak özel yüksekliklerimi tablo görünümü temsilcisinde tanımladım, öyleyse hücre contentView bu kısıtlamaya neden sahip? Buna ne sebep olabilir?
İOS6'da bu olmuyor ve her şey hem iOS6 hem de iOS7'de iyi görünüyor.
Kodum oldukça büyük, bu yüzden buraya göndermeyeceğim, ancak ihtiyacınız olursa bir pastebin istemekten çekinmeyin.
Nasıl yaptığımı belirtmek için, hücre ilkleştirmede:
- Tüm etiketlerimi, düğmelerimi vb. Oluşturuyorum
translatesAutoresizingMaskIntoConstraints
Mülklerini HAYIR olarak ayarladım- Bunları
contentView
hücrenin alt görünümleri olarak ekliyorum - Kısıtlamaları eklerim
contentView
Bunun neden yalnızca iOS7'de olduğunu anlamakla da derinden ilgileniyorum.