मैं ऑटो लेआउट,iOS8 अलग व्यवहार: view.transform साथ autolayout = CGAffineTransformMakeScale (0.5, 0.5), दृश्य तैनात सही ढंग से
मैं एक छोटे UISwitch और फिर view.transform = CGAffineTransformMakeScale(0.5, 0.5)
का उपयोग यह महसूस करने के लिए करना चाहते हैं का उपयोग कर रहा नहीं है।
इस स्विच के ऊपर एक और दृश्य है। यह स्विच के अग्रणी इस दृश्य की अग्रणी धार को गठबंधन किया जाना चाहिए, और दृश्य और स्विच के बीच एक निश्चित ऊर्ध्वाधर अंतरिक्ष, निम्न चित्र की तरह है: iOS7
परदृश्य
हालांकि, वहाँ iOS8 पर विभिन्न उपस्थिति है: iOS8
पर
दृश्य लगता है की कमी इस स्विच करने के लिए लागू नहीं कर रहे हैं की तरह।
लेकिन मैं self.view.layoutSubviews()
और self.view.layoutIfNeeded()
यह काम नहीं करता है कहा जाता है।
इस स्विच को हमेशा उपरोक्त दृश्य के दाएं कोने में चिपकने के लिए कैसे रखा जाता है?
यहाँ घटाया नहीं स्विच है
ऑटो लेआउट परत रूपांतरण साथ काम नहीं करता –
@MaxMacLeod मैं बस सोच रहा हूं कि आईओएस 7 और आईओएस 8 पर एक ही कोड का अलग व्यवहार क्यों है। मुझे लगता है कि आपका मतलब यह जवाब है [लिंक] (http://stackoverflow.com/questions/12943107/how-do-i-adjust-the-anchor-point-of-a-calayer-when-auto-layout-is- इस्तेमाल किया जा रहा/14105757 # 14105757), है ना? –
मुझे लगता है कि यह इस तरह व्यवहार करता है क्योंकि यूआईएसविच का आंतरिक सामग्री आकार डिफ़ॉल्ट रूप से रहता है: 51px h: 31px दृश्य परिवर्तन के परिवर्तन के बावजूद। आपको UISwitch को उपclass करने और CGSizeMake (25.5f, 15.5f) लौटकर - (CGSize) intrinsicContentSize विधि को ओवरराइड करने का प्रयास करना चाहिए –