Как я могу отобразить скрытый вид в Интерфейсном Разработчике, который находится на неподключенном мониторе? - PullRequest
1 голос
/ 11 мая 2010

Я использую Interface Builder для работы с NIB, и один из NIB должен иметь вид на мой внешний монитор, который не подключен, потому что я не вижу его на своем MacBook. У меня была проблема с редактированием NIB-файлов iPad, над которыми я работаю с моим большим внешним монитором.

По некоторым причинам Интерфейсный Разработчик не обнаруживает, что теперь есть только один экран, и не тянет этот вид на этот монитор. Должен быть способ вернуть это обратно в видимое пространство, чтобы я мог работать над этим. Я попытался дважды щелкнуть значок представления в органайзере, который обычно перемещает представление вперед, но оно не отображается.

Что я могу сделать? Это действительно ошибка, которая была все это время?

Ответы [ 5 ]

3 голосов
/ 14 июня 2010

Я также видел эту проблему - самый простой способ исправить это:

  1. В Интерфейсном Разработчике дважды щелкните по объекту представления.Обычно это вызывает окно и дает ему фокус, но в этом случае оно невидимо.
  2. Нажмите Cmd-W, чтобы «закрыть» невидимое окно
  3. Снова дважды щелкните объект просмотра;окно теперь должно снова открыться на экране.
1 голос
/ 11 мая 2010

Да - это путается, когда XIB создается на компьютере с несколькими мониторами, но затем редактируется на другом компьютере только с одним.

Насколько мне известно, единственный способ исправить это открыть XIB с текстом или, в идеале, XML, редактором и искать отрицательные значения в различных строках позиционирования. Я искал {{-и затем изменил все найденные отрицательные значения на 0. Например, вы наткнетесь на {{-237,172}} Когда вы найдете открытую фигурную скобку, открытую фигурную скобку, шаблон со знаком минус, затем измените отрицательное значение в ноль. то есть {{-237,172}} становится {{0,172}}.

Когда вы снова откроете XIB в IB, вы сможете увидеть свои представления.

На всякий случай сделайте копию XIB перед ручным редактированием.

0 голосов
/ 21 мая 2010
<object class="NSMutableArray" key="dict.values">
                <bool key="EncodedWithXMLCoder">YES</bool>
                <string>WhatEverYouNamedIT</string>
                <string>UIResponder</string>
                <string>{{237, 644}, {320, 480}}</string>
                <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
            </object

Я открыл файл .xib с помощью Dashcode и изменил {{237, 644} на {{0, 172}, сохраненный и открытый с IB, и окна «холста» представления снова были на экране моего ноутбука, все остальное открылось мой внешний монитор.

СПАСИБО !!! * * 1004

0 голосов
/ 11 мая 2010

Не уверен, что это будет работать, но откройте окно из вашей xib (дважды щелкните по нему) в Интерфейсном конструкторе, затем перейдите в раздел «Размер окна» инспектора. 2 Места могут помочь в этом, сначала «Начальная позиция» показывает представление окна, и вы можете просто перетащить его обратно в нужное место. Второе - «Фрейм контента». Есть настройки «X и Y», поэтому попробуйте изменить их на 0 и посмотреть, если это так.

0 голосов
/ 11 мая 2010

Попробуйте использовать Exposé, чтобы увидеть, появляется ли там окно. Обычно вы можете использовать Window> Arrange in Front для перестановки окон, но кажется, что окна без документов в IB не подчиняются обычной обработке окна Cocoa, поэтому эта команда на них не влияет.

Я не смог воспроизвести его сам (когда я отключил второй монитор, окно на нем переместилось на мой основной монитор), но это может быть связано с расположением ваших экранов. Если это ошибка IB, которую вы можете воспроизвести, отправьте ее (bugreport.apple.com).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...