2015-07-16 2 views
8

Я начал работать с xcode несколько дней назад, и сегодня я попытался подключить текстовое представление из основной раскадровки к диспетчеру просмотра, но я понял, что его не работает ,Невозможно перетащить элемент из раскадровки в viewcontroller в xcode

Я могу ctrl + щелкнуть, чтобы перетащить элемент, но не смог разместить его в обоих viewcontroller.h и .m. Я дважды проверял, что его viewcontroller, а не UIViewcontroller, так что это не так.

Я использую макрос Yosemite 10.10.

Любая помощь будет оценена по достоинству.

ответ

1

Попробуйте

Выберите вид в раскадровке и нажмите на инспекторе тождественного на правой стороне в классе введите имя контроллера вида, а затем перетащить элемент из раскадровки для просмотра контроллера, то он будет работать.

Надеюсь, это поможет.

11

Выберите ViewController в раскадровке и изменить имя ViewController к имени в .h или .m файл, а затем попробуйте Ctrl + щелчок и перетаскивание enter image description here

+0

Это сработало! Спасибо так много !! –

+0

спасибо, чувак, вы спасли мой один час: D –

0

Эй, я думаю, что вы не подключены раскадровки viewController с вашим классом viewController. проверьте скриншот, который «suhit» загрузил в свой ответ. Я хотел бы рассказать вам нечто большее. Когда вам нужно подключить любой объект раскадровки с классом.

  • сначала перейдите на панель утилиты (справа), а затем установите там класс.
  • после этого вы можете подключить управление с классом

Я надеюсь, что это поможет.

6

Для меня решение заключалось в том, чтобы щелкнуть элемент «Вид» в раскрывающемся меню, в котором отображаются все подпункты для контроллера.

Click on root view

Просто нажав на изображение контроллера на раскадровке не отображается правильно «выбрать» контроллер для перетаскивания способности, должен быть выбран вид базы.

2

Убедитесь, что вы находитесь в режиме помощника редактора (когда редактор кода и макета бок о бок).

От Apple:

С Interface Builder открыт в стандартном редакторе панели выберите управления, который вы хотите настроить, и нажмите кнопку помощник редактора (enter image description here) на панели рабочего пространства. Помощник редактора открывает файл реализации объекта.

Управление перетаскиванием из элемента управления в Interface Builder в файл реализации . (На снимке экрана помощник редактора отображает файл реализации контроллера вида для кнопки Воин .) Xcode указывает, где вы можете вставить метод действия в свой код .

+0

Это правильное решение! :) Некоторые исправления. Во-первых, он по умолчанию открывает файл .m. Чтобы противостоять этому менее яркому дизайну, нажмите «Автоматически» на пути к палитре вверху панели. В раскрывающемся списке будет два варианта: .h и .m. После некоторого вождения вы все это настроите, чтобы выполнить потрясающую операцию перетаскивания. Во-вторых, не перетаскивайте из кольца в кольцо: перетащите из кольца Inspector в строку кода рядом с кольцом. Я посчитал 22 клика и перетащил за то, что можно было бы заменить одним выпадающим списком. Могу ли я сказать здесь Иисуса Христа? Иисус Христос. –

0

Проверьте, что имена на инспекторе идентификации Viewcontroller и файлах .h, .m совпадают. Это сработало для меня

5

Для начинающих -> убедитесь, что вы сохранили клавишу «Ctrl» нажатой при перетаскивании на код. Это можно легко упустить.

0

Обратите внимание, что перетаскивание в любую точку вашего кода не обязательно работает. Если вы не смогли перетащить, чтобы создать соединение в одном месте своего кода, попробуйте перетащить его в другое место. Для меня я пытался перетащить, чтобы добавить соединение в середине функции, которая не сработала. Перемещение в начало строки функции или между функциями действительно работало.

Connection was allowed here between functions

Connection was not allowed here inside the middle of a function

Примечание: Я на Xcode 9.1

0

Я использую Xcode 9.2 Я имел мой ViewControlled переработан на разделы с помощью "расширения" ключевое слово. По-видимому, вы не можете управлять перетаскиванием в расширение ViewController. Если вы переходите к верхней части, которая находится в определении класса, управление перетаскиванием работает отлично (если вы делали другие вещи в этой теме, чтобы убедиться, что правильный класс связан с контроллером представления.

 Смежные вопросы

  • Нет связанных вопросов^_^