ฉันจะเปลี่ยนแปลงขอบเขตการดูใน IOS 6 ได้ที่ไหน

ก่อนที่ iOS 6 สถานที่ที่เหมาะสมในการทำเช่นนั้นคือ viewWillAppear: เนื่องจากทุกอย่างโหลดและตั้งค่าจากตัวสร้างอินเทอร์เฟซแล้ว แต่ตอนนี้เฟรมยังคงเปลี่ยนแปลงหลังจาก viewWillAppear:

อีกที่เดียวที่ผมคิดว่าจะใส่โค้ดประเภทนี้ได้คือใน viewDidAppear: แต่ถ้าผมทำอย่างนั้น ผู้ใช้จะเห็นว่าหน้าจอเปลี่ยนไปทันทีหลังจากมุมมองปรากฏขึ้น

แล้วฉันจะทำอย่างไร?

ขอบคุณ

อย่างไรก็ตาม เฟรมก็เปลี่ยนไปหลังจาก viewDidLayoutSubviews: ดังนั้นจึงใช้งานไม่ได้เช่นกัน


person Rodrigo Ruiz    schedule 19.01.2013    source แหล่งที่มา


คำตอบ (1)


ทฤษฎีของคุณเกี่ยวกับตำแหน่งที่ต้องเปลี่ยนเลย์เอาต์นั้นไม่ถูกต้องและมีแนวโน้มว่าจะไม่เปลี่ยนแปลงใน iOS6 สิ่งที่เปลี่ยนแปลงคือหากคุณใช้รูปแบบอัตโนมัติ คุณจะไม่ได้ทำการเปลี่ยนแปลงเฟรมหรือขอบเขตอีกต่อไป แต่รูปแบบอัตโนมัติจะทำสิ่งนั้นให้กับคุณ ตอนนี้คุณทำการเปลี่ยนแปลงข้อจำกัดแล้ว เมื่อคุณเปลี่ยนข้อจำกัด สิ่งต่างๆ เช่น เฟรม จะถูกดำเนินการให้คุณโดยอัตโนมัติ

person darbid    schedule 21.01.2013
comment
ฉันไม่สามารถจัดการให้ระบบอัตโนมัติทำงานได้: stackoverflow.com /questions/14412012/ ดังนั้นฉันจึงไม่ได้ใช้มัน แต่ฉันยังคงได้รับปัญหาเดียวกัน - person Rodrigo Ruiz; 22.01.2013