Автозавершение кода Swift не работает

Я установил бета-версию Xcode 6.0 и загрузил документацию по библиотеке iOS8. но когда я создаю проект Swift, попробуйте ввести код

func aa(){
    let format = NSDateFormatter()
    var pageData = format.
}

Я считаю, что Xcode не может расставить точки над любым свойством и функцией. Я пропустил какой-либо шаг?

Проблема решена, ввод пробела может помочь завершению кода


person adeewu    schedule 06.06.2014    source источник
comment
Можешь выложить весь файл? Является ли функция внутри класса?   -  person Dash    schedule 06.06.2014
comment
проблема в том, что ничего нельзя расставить точки, например, uiwindow   -  person adeewu    schedule 06.06.2014
comment
У меня такая же проблема, пробелы не помогают   -  person Guro Khundadze    schedule 12.06.2014
comment
Попробуйте перезапустить Xcode. Вы должны помнить, что это бета-версия программного обеспечения, и на данный момент оно, скорее всего, не работает. Сообщите об ошибке, если она постоянно не работает.   -  person jtbandes    schedule 17.06.2014


Ответы (4)


Это добавляется, когда вы меняете тип оборудования и выбираете меньше, чем iphone5.

Выберите Iphone 6, например, в списке справа от кнопки остановки, и появится код завершения для «формата».

person Nicolaï Philippe    schedule 30.09.2014
comment
Вероятно, это другая проблема, чем OP, но я тоже это видел (завершение кода и т. д. зависело от выбранной цели симулятора) и подал отчет об ошибке. Ответ состоял в том, чтобы удалить ~/Library/Developer/Xcode/DerivedData/ModuleCache (пока Xcode закрыт). - person guywithmazda; 06.11.2014
comment
Я использовал решение @guywithmazda, и оно снова работает, однако я не хочу выполнять удаление каждый день! - person gabbler; 06.11.2014

Я столкнулся с той же проблемой и решил ее, удалив не-ASCII-символ в комментарии (в моей проблеме это китайский символ «年», автоматически сгенерированный в комментарии xcode).

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

person jasonqu    schedule 04.07.2014
comment
Я зарегистрировал ошибку (у меня была галочка в моем файле, и это нарушило завершение кода), и он вернулся как дубликат, так что Apple знает об этом. — подчеркиваю, что галочки не было даже в моем коде; как и вы, я обнаружил, что достаточно, если это было в комментарии, чтобы прервать завершение кода после этой точки. - person matt; 04.07.2014

Это ошибка, ваш код работает в моей системе (OS X 10.9). Обратите внимание, что при вводе кода я иногда вижу сбой завершения кода в течение двух секунд и возвращаюсь.

При попытке первого проекта под названием «swift» автодополнение кода вылетало в бесконечном цикле… баги бета-версии… Мне просто нужно было назвать его по-другому, чтобы протестировать язык.

person noliv    schedule 06.06.2014
comment
да, моя система osx 10.9.3, как вы говорите, я создаю проект с именем проекта без быстрого и тестового, ничего удивительного, так плохо - person adeewu; 06.06.2014
comment
Извините, я больше ничем не могу помочь, единственный случай, когда я наблюдал эту же проблему, был при попытке использования swift в проекте, который называется именно swift, как я уже говорил. Если вы столкнулись с той же проблемой по другой причине, возможно, это как-то связано с путем к файлу вашего проекта, попробуйте проект с простым именем по простому пути к файлу (например, /Users/your_account/) без пробелов и специальных символов в это… Я знаю, это кажется глупым, но тот факт, что проект с именем swift не работает для меня, уже глупо. Кроме того, чтобы убедиться, что ваша среда правильная, перезапуск не помешает… :-S - person noliv; 06.06.2014
comment
noliv, я нашел несколько советов на форумах разработчиков Apple, вы можете ввести пробел, тогда вы увидите завершение кода. мой английский плохой, надеюсь, вы понимаете, ^_^, спасибо! - person adeewu; 07.06.2014

Вы знаете, я испытал нечто подобное с проектами Objective C в Xcode 6 Beta 1. Кажется, Apple немного изменила поведение по умолчанию:

В Xcode 5.x код всегда автоматически завершался по мере ввода, но в этой ранней бета-версии попробуйте нажать ESCAPE — появится список, который вы ищете. Работает на меня. Некоторый код автоматически завершается по мере ввода (как в Swift, так и в Objective C), но иногда только ESCAPE вызывает то, что мы ищем.

Я не уверен, что это ожидаемое поведение или ошибка (я предполагаю последнее).

Я должен признать, что ваш код отлично работает в моей системе без этого трюка. Просто убедитесь, что у вас есть настройка завершения кода в Xcode - Preferences - Text Editing:

введите здесь описание изображения

person Jay Versluis    schedule 17.06.2014