Неможливо перетягнути (щоб зробити фрагмент коду) у Xcode


80

Коли я виконую всі інструкції (включаючи відео Apple), щоб перетягнути текст, щоб створити фрагмент коду в xcode, я отримую іншу поведінку системи: все, що я бачу, - це вибір ibeam ... Я не можу перетягнути. Це просто закінчує вибір тексту знову. Мені не вистачає явного очевидного Apple-ism? Дякую


У вас є ця проблема на Xcode 8, але Xcode 9 працює
onmyway133

Відповіді:


147

Так, я зіткнувся з тією ж проблемою, і Apple-ism, здається, є гарним терміном для цього питання :)

Це працює таким чином:

  • Виберіть (або виділіть) код, який ви хочете перетворити на фрагмент
  • РЕДАГУВАТИ: Клацніть і утримуйте (не тягніть!) На будь-якій частині виділеного тексту на короткий момент (наприклад, 2 секунди, іноді 8 секунд)
  • EDIT: Курсор миші змінить піктограму (не на El Capitan).
  • Тепер ви можете перетягнути код через бібліотеку фрагментів, де з’явиться зелений значок +. EDIT: На El Capitan зелена піктограма не відображається, але рамка вікна фрагментів коду стає тоншою.

3
Дотримуючись цих вказівок, я частіше зазнаю невдач, ніж досягаю успіху. Я не розумію, як може бути так важко перетягувати якийсь текст. Також користувальницький інтерфейс для створення фрагментів коду може бути значно покращений. Це надзвичайно незручний спосіб управління фрагментами коду.
Ерік Б,

1
якщо ви використовуєте трекпад, ви можете використовувати жест перетягування трьома пальцями ( support.apple.com/en-us/HT204609 ) замість кроків 2 і 3
flochtililoch

4
На Macbook із трекпадом Force Touch, що працює 10.11 El Capitan та 7.2 Xcode, рішення вибору тексту, клацніть і утримуйте, а потім перетягніть до фрагментів, працює бібліотека, але з таким застереженням: потрібно клацнути порожній простір праворуч тексту у виділеному фрагменті, і при утриманні курсор не зміниться. Я рахую до 3, а потім тягну. Це досить надійно, хоча я досить часто забуваю про клацання в порожньому місці;)
Dribbler

1
Моя проблема полягала в тому, що я не чекав досить довго. Замість звичайних 2 секунд пройшло приблизно 8 секунд, перш ніж курсор зміниться.
Chris Garrett

4
У xcode 8 / macos sierra для активації мені потрібно 10 секунд! Курсор змінюється з "двотаврового" на звичайний курсор зі стрілкою. WTF, це, безперечно, має бути найбільш прихованою взаємодією з користувацьким інтерфейсом, яку коли-небудь мріяв Apple. Чому б просто не зробити кнопку "створити фрагмент" і не дозволити мені вставити код?
mpoisot

14

Це траплялося і зі мною. Наведене рішення не спрацювало, але все-таки потрібно було створити фрагменти. Це обхідний шлях, хоча це не найкращий варіант, але він працює.

  1. У Xcode виберіть вікно фрагмента та залиште його вибраним.
  2. Відкрийте програму текстового редактора.
  3. У Xcode виберіть та скопіюйте код, який ви хочете використовувати для створення свого фрагмента.
  4. Вставте його у свій текстовий редактор, а потім виберіть увесь.
  5. Тепер перетягніть із текстового редактора у вікно фрагментів у Xcode.

Як вже було сказано, не найкращий варіант, але він працює.

(Примітка для Xcode 8.1) Іноді виділяючи текст і утримуючи натиснутою кнопку миші протягом 3..8 секунд, курсор перетворюється на стрілку, і це можна зробити D&D. Шкода, це працює лише іноді ...


1
ML, якщо ви користувач Windows, я підозрюю, незважаючи на ваш коментар, що проблема полягає в наступному, тому що наведених вище роз'яснень ніколи не вистачає. Техніка перетягування вимагає того, що, як мені кажуть, є абсолютно рутинним і очікуваним (!) Методом Mac для перетягування: після 1) виділення (виділення) деякого тексту, а потім 2) клацання по ньому в очікуванні перетягування, потрібно зачекайте приблизно 1/4 секунди, перш ніж фактично рухати мишу, щоб перетягнути. Я вважаю, що дисплей дає деяку підказку зворотного зв'язку. У Windows немає залежності від затримки на 1/4 секунди. Будь ласка, повідомте про це. Дякую
Джек Белліс

1
Джек, я користувач Mac. Може статися помилка, яку досі не виправляє Apple. Деякі користувачі (у тому числі і я) можуть використовувати "Drag & Drop" без проблем у своїй системі. Однак саме в Xcode може трапитися так, що Drag & Drop не працює, навіть "Виділивши текст, почекайте, поки курсор зміниться на стрілку тощо". Тому я вважаю, що цей спосіб вирішення проблеми, як я вже сказав, не найкращий варіант, але функціональний, поки ця помилка не буде виправлена.
MLBDG

Використання другого додатка було для мене єдиним способом, який працював. Чому немає кнопок Apple? Ярлик, можливо, перетягування ... не потрібно.
WCByrne

9

На High Sierra 10.13.3 та XCode 9 я зіткнувся з тією ж проблемою. Рішення, яке працює для мене, це вибір коду на порожньому місці перед першим символом, а потім перетягування його до бібліотеки фрагментів.

Важливо: вам потрібно перетягувати лише з порожнього місця (подивіться знімок екрана нижче). В іншому випадку ви знову переберете свій код.

Курсор змінюється лише тоді, коли ви починаєте перетягувати, тому не плутайтеся і не чекайте, поки він зміниться.

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


2

Я зіткнувся з цією проблемою з Xcode 7.2 у Mac OS X 10.11.2 (El Capitan). Клацніть і утримуйте виділення, і курсор ніколи не змінюватиметься з двотавру на стрілку для перетягування.

Хоча відповідь MLBDG є корисним обхідним шляхом, я виявив, що вихід і перезапуск Xcode вирішили проблему. Це може працювати не для всіх, але варто спробувати, якщо у вас виникають труднощі.


1
  1. просто виділіть свій текст
  2. скопіюйте у текстове поле фільтра, яке ви можете побачити внизу бібліотеки фрагментів
  3. вставити текст
  4. тепер виділіть текст і перетягніть звідти до бібліотеки фрагментів
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.