düzgün çalışmıyor. > A UILabel ve basit bir UIView - biz 2 subviews olan bir üst görünüme sahip Yukarıdaki örnekteAutoLayout ve UILabel boyutlandırmak animasyon ben çok basit bir görev üzerinde garip bir sorun var cihaz dönme
|--------------------------------------|
| Parent View |
| |
||------------------------------------||
|| UILabel ||
||------------------------------------||
| |
| |
||------------------------------------||
|| UIView ||
||------------------------------------||
| |
| |
|--------------------------------------|
:
Ben sorunu yeniden oluşturmaya çok küçük bir kurulum ihtiyacı var. autolayout kullanarak Im düzeni yukarıda gösterilen uygulamak:
Constraints for UILabel:
Leading Space to superview = 0
Trailing Space to superview = 0
Fixed Height constraint (e.g. 80pt)
Top Space constraint (e.g. 50pt)
The UIView subview has the same constraint types (the values for height and top space differs).
Yani ben bu kurulum ile beklediğiniz, biz uzay başındaki ve sonundaki sıfır olması gerektiğini tanımlanan her iki subviews üst biriminin tam genişliği kabul edecek olmasıdır. Dolayısıyla, ana görünümün genişliğini değiştirirseniz, alt görüntülerin genişliği de aynı hizaya gelmek için değişmelidir.
ana görünüm 200x400 boyutu punto boyutlarında diyelim. Örneğimi portreimde oluşturup çalıştırdığımda her şey yolunda görünüyor. Manzaraya döndüğümde, her şey hala iyi görünüyor. Üst görünümlerin genişliği ve hatta alt görünümlerin genişliği daha da genişledi. geri portre uilabels genişlik döndüğünde fakat şimdi hemen herhangi bir animasyon olmadan hedef genişliği alır:
|--------------------------------------|
| Parent View |
| |
| (immediately has target size) |
| |--------------| |
| | UILabel | |
| |--------------| |
| |
| (this subview is still |
| animating its width) |
| |------------------------------| |
|-->| UIView |<--|
| |------------------------------| |
| |
| |
|--------------------------------------|
görüntüleme genişliği üst ve UIView subviews genişliği uygun şekilde canlandırılmıştır. Burada garip bir davranışa sahip tek uilabel ve bu soruna neyin neden olduğunu anlayamıyorum.
Programsal olarak hiyerarşi ve kısıtlamalar oluşturuyor musunuz? Bu durumda, translatesAutoresizingMaskIntoConstraints değerini NO olarak ayarladınız mı? –
bunu anladın mı? Aynı problemi yaşıyorum – user18853