กรอบคำเตือนสำหรับ“ แถบการนำทาง” จะแตกต่างกันในขณะใช้งานปรากฏใน Xcode 8 Swift 3


143

ก่อนที่ฉันจะอัปเกรดเป็นXcode 8ฉันไม่เห็นข้อผิดพลาดนี้ในกรณีดังกล่าว ฉันมีตัวควบคุมทิศทางที่แตกต่างกัน Frame for "Navigation bar" will be different at the run time. Navigation bar "Expected: width=384, Actual: width=375สำหรับพวกเขาทั้งหมดผมเห็นข้อผิดพลาด Navigation barในความเป็นจริงเหล่านี้ควบคุมการเดินเรือไม่ได้ Navigation barมีอยู่สำหรับผู้ชมย่อย อย่างไรก็ตามผมสามารถแก้ได้โดยเห็บและยกเลิกการเลือกช่องทำเครื่องหมายในShows navigation bar Attributes inspectorแต่น่าเสียดายทุกครั้งที่ฉันเปิดMain.storyboardคำเตือนนี้อีกครั้งจะปรากฏขึ้นอีกครั้ง นอกจากนี้ถ้าฉันคลิกที่สามเหลี่ยมสีเหลืองและจากนั้นในเฟรมอัพเดทไม่มีอะไรเกิดขึ้น

ป้อนคำอธิบายรูปภาพที่นี่


1
ปัญหาเดียวกันได้รับการยืนยันที่นี่ การแก้ปัญหาที่แนะนำไม่สามารถแก้ไขปัญหาได้
— GregP

@GregP โปรดตรวจสอบคำตอบและตอบกลับของฉัน
— KSR

@Ashish Kakkad โปรดตรวจสอบวิธีแก้ปัญหาและตอบกลับของฉัน
— KSR

ยื่น rdar: // 28844288 รู้สึกอิสระที่จะล่อลวงopenradar.me/radar?id=4985464104681472
— Guillaume Algis

นี่คือคำเตือนครั้งสุดท้ายของฉันที่ฉันจะดักฟังหลังจากอัปเดตโครงการของฉัน
— Sethmr

คำตอบ:


154

คำเตือนจะหายไปหากคุณเปลี่ยนคุณสมบัติ "ขนาดจำลอง" เป็น "อิสระ"


37
นี่ไม่ได้แก้ปัญหา ปิด Xcode และเปิดอีกครั้งปัญหาจะมาอีกครั้ง
— Ashish Kakkad

2
นี้จะ bugging นรกออกจากฉัน .. ฉันก็พยายามนี้และนี้ไม่เตือนลบชั่วคราว คุณสามารถสลับขนาดที่จำลองกลับไปกลับมาเพื่อลบคำเตือนเมื่อกลับมา ซูเปอร์ น่ารำคาญ
— nekonari

5
เฉพาะการแก้ไขชั่วคราว - นี่ไม่ใช่คำตอบ
— emem

5
ทั้งเปลี่ยนขนาดนี้จำลอง (และกลับไป 'Inferred' หรืออะไรก็ตาม) หรือ"การสลับปรับ scrollview ขุ่น / ปิด" misplaced="YES"ทั้งสองจะก่อให้เกิดสตอรี่บอร์ดที่จะเอามัน นี่เป็นข้อผิดพลาด Xcode และการแก้ไขนี้เป็นชนิดบังคับให้รีเฟรช นำมาจากคำตอบ @buildsucceeded
— bauerMusic

1
@MobileBloke ด้วยการบังคับให้รีเฟรชฉันหมายความว่ามันจะทำให้มุมมองสตอรี่บอร์ดเขียนใหม่ (รีเฟรช) params, ประเมินค่าและลบคำเตือนอีกครั้ง มันเป็นการรีเฟรชจริงๆแรงหมายถึงว่ามันไม่ได้ทำเองโดยอัตโนมัติ (เท่าที่ควร) และต้องการการเปลี่ยนแปลงโดยพลการด้วยตนเอง
— bauerMusic

35

ตามที่กล่าวไว้ที่นี่คุณสามารถแก้ไขปัญหานี้ได้ด้วยการสลับเปิด / ปิดปรับปรุง Scrollview Insets


4
ว้าวและ (ตรวจสอบคอมไพล์) แท้จริงทุกสิ่งที่เกิดขึ้นเมื่อคุณทำเช่นนี้คือสิ่งที่misplaced="YES"จะถูกลบ : /
— buildsucceeded

7
ที่แก้ไขมันจนกว่าคุณจะปิดและเปิดโครงการอีกครั้ง ไม่ใช่การแก้ไขที่สมบูรณ์
— Casey Wagner

15

ฉันเปลี่ยนจาก View as: iPhone 6S เป็น iPhone 5S แล้วเปลี่ยนกลับเป็น iPhone 6S และ Xcode ทำการเปลี่ยนแปลงทั้งหมดเพื่อลบคำเตือน


2
สิ่งนี้ใช้งานได้ในระยะเวลาอันสั้นหลังจากนั้น Xcode ก็ทำการประมวลผลอีกครั้งสิ่งเดียวกันก็เกิดขึ้นและมีการเตือนอีกครั้ง นี่ยังใช้งานได้กับ Xcode ล่าสุดหรือไม่
— UKDataGeek

12

สิ่งนี้ใช้ได้กับฉันที่ Xcode 8.3.1 หลังจากรีสตาร์ท Xcode มันจะยังใช้งานได้

ป้อนคำอธิบายรูปภาพที่นี่

  1. เลือกตัวควบคุมการนำทาง

ป้อนคำอธิบายรูปภาพที่นี่

  1. ไปที่แสดงตัวตรวจสอบขนาด

ป้อนคำอธิบายรูปภาพที่นี่

  1. เปลี่ยนขนาดจำลองเป็นอิสระ

ป้อนคำอธิบายรูปภาพที่นี่

  1. เปลี่ยนขนาดจำลองกลับเป็นคงที่

ป้อนคำอธิบายรูปภาพที่นี่

  1. จากนั้นคำเตือนจะหายไป

ป้อนคำอธิบายรูปภาพที่นี่


มีความคิดว่าทำไมสิ่งนี้ถึงใช้งานได้และไม่ใช่ปุ่ม "อัปเดตเฟรม"
— แมงกานีส

@guoc คุณช่วยฉันได้โปรดstackoverflow.com/questions/46375778/ ...... ?
— พฤษภาคม Phyu

7

เป็นวิธีแก้ปัญหาเพียงเพื่อกำจัดคำเตือนที่น่ารำคาญฉันได้รับการแก้ไข Main.storyboard ด้วยตนเองโดยการลบ 'หายไป' ใน:

<navigationBar key="navigationBar" opaque="NO" contentMode="scaleToFill" misplaced="YES" translucent="NO" id="Os1-Xh-7XN">

แฮ็ค แต่มันดีที่มีคำเตือนเป็นศูนย์แทนที่จะเป็น 1 :)


ฉันจะต้องเพิ่มสิ่งนี้ในภายหลังหรือไม่? ฉันไม่สนใจว่าตัวควบคุมทิศทางของฉันจะเป็นอย่างไรตราบใดที่ฉันไม่มีคำเตือน มันตลกดี กระดานเรื่องราวจะจดจำคำเตือนเป็นเสี้ยววินาทีจากนั้นจะหายไปเมื่อคุณเข้าสู่กระดานเรื่องราวด้วยวิธีนี้
— Sethmr

ฉันทำสิ่งเดียวกันแล้วอย่าแตะต้องกระดานเรื่องราวอีกครั้ง ทุกอย่างทำงานได้ดี
— Zhao

PRoblem คือเมื่อคุณโหลดมันจะกลับมา ... ใครก็ตามที่สังเกตเห็นว่ามันต้องใช้เวลานานในการโหลดกระดานเรื่องราวด้วยสปินเนอร์ที่ทำงานอยู่เมื่อเกิดข้อผิดพลาดนี้?
— UKDataGeek

6

คลิก "ดูเป็น" ที่ด้านล่างซ้ายของกระดานเรื่องราวของคุณและเลือกขนาดอุปกรณ์อื่นจากนั้นคลิกอีกครั้งและสลับกลับเป็นขนาดอุปกรณ์ที่คุณเริ่มต้นด้วย สิ่งนี้ใช้ได้สำหรับฉัน


1
มันแค่ปรับอุณหภูมิให้ฉันด้วย
— zero3nna

3

จนกว่า Xcode 8 จะได้รับการติดตั้งคุณสามารถตั้งค่าตัวเลือก "ดูเป็น:" เป็น "iPhone SE" เพื่อกำจัดคำเตือน ไม่เหมาะ แต่ใช้ได้ในตอนนี้


ฉันกำลังใช้ SE .. แต่ยังคงเตือน
— Abdul Waheed

1
ใช่ฉันรู้. แต่พวกเขาจะหายไปเมื่อใดก็ตามที่คุณสลับการเลือกไปเป็นอย่างอื่น ปัจจุบันฉันเริ่มต้นด้วย 7 เปลี่ยนเป็น SE จากนั้นกลับสู่ 7 เพื่อล้างคำเตือนเหล่านี้ หรือเพียงปล่อยไว้และอย่าตรวจสอบmisplacedคุณสมบัติเมื่อทำการเปลี่ยนแปลง
— nekonari

3

ฉันลองใช้คำแนะนำทั้งหมดข้างต้น แต่ดูเหมือนจะไม่ทำงาน ฉันคิดว่ามันอาจเป็นข้อบกพร่องที่ร้ายแรงกว่านี้

ฉันได้บันทึกข้อผิดพลาดกับ Apple Bug Reporter (ลิงค์: https://bugreport.apple.com/logon ) - หากคุณต้องการทำเช่นเดียวกันโปรดอ้างอิงข้อผิดพลาด: 31355220เพื่อให้แอปเปิ้ลสามารถรวมเข้าด้วยกัน ผู้คนจำนวนมากขึ้นที่รายงานมัน - ข้อมูลเพิ่มเติมที่พวกเขาจะต้องแก้ไขปัญหานี้


2

ฉันสามารถกำจัดปัญหาได้อย่างสมบูรณ์โดยการตั้งค่าขนาดจำลองของตัวควบคุมมุมมองเป็นอิสระแล้วตั้งค่าความกว้างจาก 375 เป็น 320


คุณต้องตั้งค่าเฉพาะบนตัวควบคุมมุมมองที่ไม่มีผู้ปกครอง (ตัวควบคุมมุมมองรูท + อาจจะมากกว่านั้นขึ้นอยู่กับสิ่งที่คุณมีในกระดานเรื่องราวของคุณ)
— thetrutz

1

มีปัญหาเดียวกันนี่คือสิ่งที่ฉันทำเพื่อแก้ไข:

ขยายข้อมูลข้อผิดพลาดและคลิกที่รายละเอียดคำเตือน Xcode ควรเปิดการตั้งค่ามิติข้อมูล / ตำแหน่งโดยอัตโนมัติ แทนที่ค่าปัจจุบันด้วยค่าที่แนะนำในรายละเอียดคำเตือน

ป้อนคำอธิบายรูปภาพที่นี่

โดยทั่วไปตรวจสอบให้แน่ใจว่าขนาดในรันไทม์ของคุณเหมือนกับขนาดที่คุณระบุในตัวตรวจสอบขนาด

นอกจากนี้คุณยังสามารถคลิกที่ไอคอนข้างรูปที่คุณโพสต์ (สามเหลี่ยมสีเหลืองกับวงกลมสีขาวบางครั้งก็เป็นไอคอนวงกลมสีแดง) จากนั้นจะมีตัวเลือกให้แก้ไข / ปรับปัญหาโดยอัตโนมัติ

ป้อนคำอธิบายรูปภาพที่นี่

ฉันเลือกตัวเลือกข้อ จำกัด การอัปเดตจากนั้นปรับข้อ จำกัด ใหม่ตามลำดับ


4
ไม่ทำงานในสถานการณ์นี้ ฟิลด์ X / Y / กว้าง / สูงสำหรับแถบการนำทางเป็นสีเทา / ไม่สามารถแก้ไขได้ทั้งหมด
— Slipp D. Thompson

@ Ian Hmmm ... ฉันคิดว่าฉันเพิ่งจะแก้ไข xib เพื่อให้ได้ตัวเลขที่ตรงกัน
— Slipp D. Thompson

1

สำหรับฉันปัญหาคือว่าฉันซ่อนแถบด้านล่างในการผลักดัน (ใช้ช่องทำเครื่องหมาย IB)

ฉันต้องเลือกตัวเลือก 'ไม่มี' ใน 'แถบด้านล่าง':

ป้อนคำอธิบายรูปภาพที่นี่


0

ตกลงดูเหมือนว่าฉันได้แก้ไขปัญหาแล้ว นี่คือสิ่งที่ฉันทำ

เลือกเฟรมอัปเดตเหมือนปกติ เปิดไฟล์อื่นแล้วคลิกกลับไปที่ไฟล์เรื่องราว หากไม่ได้ผลให้รีสตาร์ท Xcode ดูเหมือนว่าจะมีการอัปเดตภายใน แต่ UI ตัวสร้างอินเทอร์เฟซติดค้างในบางครั้ง


3
หลังจากเปิด XCode อีกครั้งคำเตือนนี้จะหายไป แต่ถ้าฉันเปิดไฟล์ใด ๆ ในโครงการmain.storyboardคำเตือนเหล่านี้จะปรากฏขึ้นอีกครั้งอีกครั้ง
— แดนนี

0

โปรดเปลี่ยนตัวอย่างอุปกรณ์ของคุณใน xcode เพื่อดูคอนโทรลเลอร์และรวบรวมและตรวจสอบคำเตือน ...

Xcode 8 เป็น bit buggy ตัวสร้างส่วนต่อประสานจะรีเซ็ตโดยไม่มีการสุ่มซึ่งจะมีผลกับมุมมองที่มีอยู่ทั้งหมด ลองเปลี่ยนอุปกรณ์แสดงตัวอย่างของคุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.