Не может соединить IBOutlet в Интерфейсном Разработчике

Нет. Я судил в значительной степени каждого профилировщика.NET на рынке (МУРАВЬИ, vTune, OptimizeIt, DevPartner, YourKit), и по-моему dotTrace является лучшим из партии. Это - один только из двух профилировщиков, которых я использовал (другой являющийся YourKit), который имеет достаточно низко наверху для обработки очень интенсивного ЦП приложения.

, Если и только если Ваше приложение относительно легко, я мог рекомендовать Профилировщик МУРАВЬЕВ . Линию за линией статистика иногда довольно полезна, но они прибывают в цену в профильной эффективности.

25
задан Meet Doshi 31 December 2015 в 07:24
поделиться

8 ответов

Я сделал комбинацию вещей в этой теме и наконец-то добился успеха.

В Interface builder (не xcode)

  1. File->Reload All Class Files
  2. File->Read Class Files (выберите MyClass.h)
  3. Reconnect File's Owner by
    a. Установить класс на "MyClass"
    b. Переподключить представление к представлению владельца файла

Теперь все в норме. Странно.

Надеюсь, это больше поможет, чем запутает ;-)

42
ответ дан 28 November 2019 в 17:57
поделиться

Вы уверены, что Владелец файла правильно настроен на ваш пользовательский UIViewController и что вы сохранили свой .h файл после добавления Ключевое слово IBOutlet в переменной экземпляра и свойстве ?

4
ответ дан 28 November 2019 в 17:57
поделиться

Так что я не Я точно не знаю, почему он не устанавливает соединения IBOutlet автоматически, но я нашел обходной путь. Мне пришлось вручную добавить выходы через библиотеку в Interface Builder для моего контроллера представления клиента. Если кто-нибудь найдет исправление для автоматического чтения из файла .h (как и должно), я был бы очень признателен, если бы он его опубликовал.

спасибо

0
ответ дан 28 November 2019 в 17:57
поделиться

У меня была почти такая же проблема, как и у вас. Я не знаю, решили ли вы свою проблему, но моя проблема заключалась в том, что я изменил имена всех классов, включая контроллер представления, но имя владельца файла осталось неизменным. Итак, я дважды щелкнул владелец файла -> щелкните i в открывшемся окне -> измените имя в поле Class на новое имя контроллера просмотра. Тогда это сработало. Может быть, вы захотите попробовать еще раз и посмотреть, работает ли он. Удачи.

3
ответ дан 28 November 2019 в 17:57
поделиться

Удостоверились ли вы, что определили ваши розетки в файле .h как соответствующий тип? Если вы пытаетесь подключить текстовое поле в IB, ваш .h файл должен выглядеть примерно так ...

IBOutlet UITextField    *MyTextField;

Убедитесь, что тип - UITextField (или UITextView и т. Д.). Если вы наберете их как NSString или что-то не подходящее, вы не сможете подключить их в Interface Builder ....

3
ответ дан 28 November 2019 в 17:57
поделиться

В файле конструктора интерфейса->Чтение файлов классов и указание на класс владельца файла. Это исправило его для меня.

6
ответ дан 28 November 2019 в 17:57
поделиться

У меня была такая же проблема, и я просто попробовал предложение Diatrevolo: нажмите «Файл», затем прочитайте файлы класса и укажите класс владельца вашего файла.

Это исправлено для меня. Я бы +1 Диатрево, но у меня еще нет репутации ...

1
ответ дан 28 November 2019 в 17:57
поделиться

Я новичок в этом, и у меня была та же проблема. Я пошел попробовать предложение Диатреволо и тем самым выяснил, что вызвало мою проблему. Первоначально я создал свой ViewController где-то случайным образом в иерархии проекта, а затем переместил их в папку классов. Это означало, что настоящих файлов не было в папке классов, но проект думал, что они есть, поэтому IB искал не в том месте. Я переместил фактические файлы в фактический файл классов с помощью Finder, а затем удалил и прочитал их в проекте. Потом все заработало!

0
ответ дан 28 November 2019 в 17:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: