ฉันเพิ่งย้ายรหัสบางส่วนไปยัง iOS 11 beta 5 SDK ใหม่
ตอนนี้ฉันได้รับพฤติกรรมที่สับสนมากจาก UITableView Tableview เองก็ไม่ได้แฟนซีขนาดนั้น ฉันมีเซลล์ที่กำหนดเอง แต่ส่วนใหญ่เป็นเพียงความสูง
เมื่อฉันดันตัวควบคุมมุมมองด้วย tableview ฉันจะได้รับภาพเคลื่อนไหวเพิ่มเติมโดยที่เซลล์ "เลื่อนขึ้น" (หรืออาจจะเปลี่ยนกรอบมุมมองตารางทั้งหมด) และลงพร้อมกับภาพเคลื่อนไหวการนำทางแบบพุช / ป๊อป โปรดดู gif:
ฉันสร้างด้วยตนเองtableview
ในloadView
วิธีการและรูปแบบการตั้งค่าอัตโนมัติ จำกัด จะเท่ากับชั้นนำต่อท้ายด้านบนด้านล่างของ SuperView tableview ของ ซูเปอร์วิวคือมุมมองรูทของตัวควบคุมมุมมอง
ดูรหัสการผลักดันคอนโทรลเลอร์เป็นมาตรฐานมาก: self.navigationController?.pushViewController(notifVC, animated: true)
รหัสเดียวกันให้การทำงานปกติบน iOS 10
คุณช่วยชี้ทิศทางของสิ่งที่ผิดได้ไหม
แก้ไข: ฉันได้สร้างตัวควบคุม tableview ที่เรียบง่ายมากและฉันสามารถสร้างพฤติกรรมเดียวกันได้ที่นั่น รหัส:
class VerySimpleTableViewController : UITableViewController {
override func viewDidLoad() {
super.viewDidLoad()
self.tableView.register(UITableViewCell.self, forCellReuseIdentifier: "Cell")
}
override func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 4
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)
cell.textLabel?.text = String(indexPath.row)
cell.accessoryType = .disclosureIndicator
return cell
}
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
tableView.deselectRow(at: indexPath, animated: true)
let vc = VerySimpleTableViewController.init(style: .grouped)
self.navigationController?.pushViewController(vc, animated: true)
}
}
แก้ไข 2: ฉันสามารถ จำกัด ปัญหาให้แคบลงไปที่การปรับแต่ง UINavigationBar ของฉัน ฉันมีการปรับแต่งดังนี้:
rootNavController.navigationBar.setBackgroundImage(createFilledImage(withColor: .white, size: 1), for: .default)
ที่createFilledImage
สร้างภาพสี่เหลี่ยมจัตุรัสที่มีขนาดและสีที่กำหนด
ถ้าฉันแสดงความคิดเห็นในบรรทัดนี้ฉันจะกลับมาทำตัวปกติ
ฉันขอขอบคุณที่คิดเกี่ยวกับเรื่องนี้
navigationBar.isTranslucent
เป็นfalse
เท่านั้นมิฉะนั้นจะใช้ได้ดี