ios 7: смещенная рамка просмотра для «label - label» будет отличаться во время выполнения

<p>я только что закончил приложение для ios 6 и купил учетную запись разработчика неделю назад, поэтому у меня не было много времени, чтобы поиграть с ios 7 sdk. просто скачал версию golden master и пытаюсь обновить мое приложение до совместимости с ios 7.</p><p>я получил много предупреждений, говорящих</p><blockquote> <p>смещенная рамка просмотра для "метка - метка" будет отличаться во время выполнения.</p> </blockquote><p>и я не могу запустить программу. проект содержит табличное представление, и он анализирует и отображает xml-канал из rss.</p><p>как исправить эту проблему?</p>

<p>у меня была та же проблема, и я получаю ниже форму ответа apple:</p><blockquote> <p>вам необходимо обновить ограничения, чтобы они соответствовали кадрам этих представлений.</p> </blockquote><p>я сделал следующее:</p><p><strong>редактор -> устранить проблемы с автоматической компоновкой -> очистить все ограничения в ** представлении контроллера</strong></p><p>затем я снова изменил порядок своих объектов в представлении.</p><p>ps: попробуйте решение энрико в первую очередь.</p>

<p>принятый ответ <em>исправит</em> проблему, но это не очень хорошее решение, потому что оно снимет все ваши ограничения. если вы потратили часы на ограничения, не делайте этого.</p><p>если вы щелкнете по треугольнику рядом с предупреждением, вы можете получить объяснение того, что неуместно. тогда вы можете просто переместить кадр туда, где он должен быть. например:</p><p><img src="https://i.stack.imgur.com/l7shz.png" alt="enter image description here"></p><p>в этом случае я просто переместил позицию y моего текстового представления в 94, и предупреждение исчезнет. это потому, что одно из моих ограничений заставит представление быть где-то еще, когда приложение запущено, но положение отличается от того, где оно в настоящее время находится в раскадровке.</p><hr><p>еще один способ переместить рамку в правильное положение - щелкнуть предупреждение рядом с именем view controller в вашей раскадровке, а затем щелкнуть желтый предупреждающий знак и нажать кнопку "обновить рамку".</p><p><img src="https://i.stack.imgur.com/etzdu.png" alt="enter image description here"></p><p><img src="https://i.stack.imgur.com/jbrqo.png" alt="enter image description here"></p><p>эти два метода не являются разрушительными и не снимают ваши ограничения. во всяком случае, это покажет, что вам может потребоваться внести незначительные коррективы в ваши ограничения.</p>

<p>у меня была та же проблема, что вам нужно, обновить ограничения или обновить кадр. на раскадровке у вас есть маленькая панель инструментов, как показано на рисунке ниже. <img src="https://i.stack.imgur.com/m8jgt.png" alt="enter image description here"></p><p>пожалуйста, посмотрите значение: -</p><p><img src="https://i.stack.imgur.com/dsbpz.png" alt="enter image description here"></p><p>вы можете выбрать "обновить рамки" или "обновить ограничения" и использовать "сбросить до рекомендуемых ограничений". это решит проблему, связанную с неуместным просмотром. не перетаскивайте представления, чтобы внести изменения в макет. вместо этого измените применимые ограничения. пожалуйста, дайте мне знать, если вам не ясно.</p>

<p>если у вас возникают проблемы с поиском <strong> обновлений фреймов </strong> в xcode, это можно сделать так:</p><p> <a href="https://i.stack.imgur.com/vk6fv.png"><img src="https://i.stack.imgur.com/vk6fv.png" alt="enter image description here"></a> </p>

<p>ни один из ответов не работает во всех случаях. начиная с последней версии xcode, используя uisearchbar, включение поля обзора, включенного в ib, заставляет поле поиска отображаться с двойной высотой (но под ним нет полосы обзора). независимо от того, добавляете ли вы ограничение высоты (любой высоты) в поле поиска, вы получите предупреждение, что это неуместное представление, которое будет 88 h во время выполнения, но 44 h в ib. обновление фреймов (любых или всех фреймов) не решает проблему. похоже, ошибка в ib.</p>