Иногда мой код перемещается сам по себе или просто исчезает в редакторе Eclipse XML.
Когда я выделяю затронутый код, выделенные строки пытаются исправить себя. Но когда я прокручиваю или перетаскиваю мышь в противоположном направлении, код снова смещается. По сути, у меня будут повторяющиеся, отсутствующие и ломаные строки кода, отображаемые из файла, в котором нет ошибок. Файлы , затронутые сделать компиляции , и если я закрыть / повторно открыть их эта проблема уходит, на данный момент. Есть идеи о том, что происходит?
Дополнение: Джефф Аксельрод предоставил ссылку на новый отчет об ошибке в Google.
Ответы:
Эта ошибка (наконец) исправлена в ADT 21. Исправление теперь доступно в ADT 21 Preview 9, опубликованном несколько минут назад здесь: https://android-review.googlesource.com/#/c/44936/1
Причина, по которой вы получаете странные визуальные артефакты, заключается в том, что если файл содержит оборванные окончания строк DOS (несколько возвратов каретки без новой строки для каждого возврата каретки), Eclipse очень запутывается. Это проблема Eclipse https://bugs.eclipse.org/bugs/show_bug.cgi?id=375421 .
Исправление состоит из двух частей: (1) Во-первых, ADT был исправлен так, что он больше не вводит эти последовательности \ r \ r в документ. Это гарантирует, что вы не получите новые документы, которые вызывают странное поведение редактирования, но не исправят задним числом старые документы с этими окончаниями строк, поэтому, если вы их откроете, вы все равно получите странное поведение редактирования.
(2) Во-вторых, появилась новая проверка на наличие разрывов строк в документах. Это выполняется постепенно, поэтому, если вы редактируете XML-файл, в котором есть эта проблема, ADT добавит маркер ошибки для этой проблемы - вместе с быстрым исправлением, чтобы выполнить операцию над документом, чтобы исправить ее.
Вкратце: получите ADT 21 Preview 9; запустите Lint в своих проектах и найдите любые жалобы на файлы, содержащие окончание разорванных строк, и, если они обнаружатся, примените quickfix. С этого момента при дальнейшем редактировании с помощью редактора макета файлы должны оставаться в единообразном формате.
К вашему сведению, соответствующее исправление находится здесь: https://android-review.googlesource.com/#/c/44936/
Инструкции по простому обновлению SDK Tools и плагина Eclipse ADT находятся здесь: http://tools.android.com/preview-channel
- Tor (от команды инструментов Android)
источник
После некоторых тестов я обнаружил, что здесь может быть виновата опция «Автоматически форматировать XML, отредактированный редактором визуального макета» (в Preferences | Android | Editors).
С помощью своих тестов я обнаружил, что изменение свойства (например, layout_gravity) в режиме дизайна Graphical Layout всегда портит визуальное отображение файла, когда я возвращаюсь в режим XML (текст), когда эта опция включена, но что у меня нет проблем, когда он выключен.
Если вы хотите отформатировать XML по возвращении из режима разработки графического макета, просто используйте ярлык Ctrl+ Shift+ F. Также я не видел проблем с использованием опции «Форматировать при сохранении»; даже когда я использую его в режиме графического макета; поэтому вы можете использовать Ctrl+ Sвместо этого, пока вы все еще находитесь в режиме графического макета, чтобы сохранить и отформатировать свой XML.
Я пробовал другие параметры редактора, такие как «Показать индикатор диапазона» или «Использовать символы для отображения изменений на вертикальной линейке», но я не заметил никакой разницы в поведении при активации или деактивации этих параметров.
Наконец, чтобы исправить визуальное отображение файла, когда он поврежден; Я обнаружил, что использование ярлыков: Ctrl+ A, Ctrl+ C, Ctrl+ Vнемного проще, чем закрытие / повторное открытие файла. Это эквивалентно выделению всех, копированию, вставке; эффективное копирование всего XML-файла поверх самого себя.
источник
Эта ошибка по-прежнему возникает в Juno (Eclipse 4.2.0, ADT r20).
Мое исправление: перейдите в Window -> Preferences -> Android -> Editors. У меня установлены флажки "Форматировать XML с использованием стандартного Android XML ..." и "Использовать настройки Eclipse для отступов ...." . Это решило проблему для меня.
источник
>
) и закрывающей скобкой автономного тега (/>
) для определения того, следует ли предшествовать пробелом (опция ограничена обоими или ни одним). Вроде бы банальная проблема, но меня почему-то очень раздражает.РЕДАКТИРОВАТЬ: содержать более быстрый метод, поэтому он был выведен наверх:
Ctrl+ F -> заливать вот так:
Оригинал был здесь: просто не скрывайте эту проблему, если вы можете ее исправить. Иногда даже закрытие XML-файла не помогало.
Чтобы исправить это, давайте посмотрим на причину. Прежде всего, включите « Показывать символы пробела » ( Окно> Настройки> Общие> Редакторы> Редакторы текста> Показывать символы пробела )
Затем вернемся к вашему XML-файлу.
В масштабированном изображении вы можете увидеть разницу в цветах символа "\ n";
затем просто наведите курсор на тот символ, который темнее.
смотри, две строчки выбрано 0o ... может в этом причина!
так что просто удалите его и нажмите кнопку «Enter» или «Return» для добавления символа «\ n».
Надеюсь, это вам поможет.
также вы можете найти другой символ конечной строки:
Просто удалите и его, и ваш XML будет отлично выглядеть!
PS извините за гиперссылки, я новичок и на SO я не могу загрузить изображение или более 2 ссылок. так что надеюсь, вы поймете суть без дополнительных картинок;)
PPS Спасибо парню, который проголосовал за, теперь я могу предоставить это с изображениями.
источник
У меня была такая же проблема, и я наконец нашел решение: щелкните правой кнопкой мыши в редакторе и выберите
Source/Cleanup Document
.источник
Я была такая же проблема. Следующие шаги были решением. Ссылка предполагает, что это сработало для других.
Обратите внимание, что для каждой из 3 команд есть 2 привязки.
На этом этапе у вас должно быть только 2 привязки для выполнения копирования / вставки (например, ctl + c / ctl + v)
Это решение было найдено здесь .
источник
Когда эта ошибка появляется в новых версиях ADT (которые являются обязательными для исправления и где ошибка не должна появляться часто), просто используйте инструмент Lint, чтобы исправить ее.
Найдите его в предупреждениях о Lint и щелкните значок желтой лампочки в правом верхнем углу этого списка предупреждений о Lint.
Надеюсь, это поможет кому-нибудь
источник