Terkadang kode saya bergerak sendiri atau menghilang begitu saja di editor XML Eclipse.
Saat saya menyorot kode yang terpengaruh, baris yang disorot mencoba untuk mengoreksi sendiri. Tetapi ketika saya menggulir atau menyeret mouse ke arah yang berlawanan, kode tersebut bergeser lagi. Intinya saya akan mengulangi, hilang, dan baris kode rusak yang ditampilkan dari file bebas kesalahan. File yang terpengaruh melakukan kompilasi dan jika saya menutup / membukanya kembali masalah ini akan hilang, untuk saat ini. Ada ide tentang apa yang terjadi?
Tambahan: Jeff Axelrod memberikan link ke laporan bug baru dengan Google.
Jawaban:
Bug ini (akhirnya) diperbaiki di ADT 21. Perbaikannya sekarang tersedia di ADT 21 Pratinjau 9, diposting beberapa menit yang lalu, di sini: https://android-review.googlesource.com/#/c/44936/1
Alasan Anda mendapatkan artefak visual yang aneh adalah bahwa jika file berisi akhir baris DOS yang rusak (beberapa carriage kembali tanpa baris baru untuk setiap carriage return), Eclipse menjadi sangat bingung. Itu masalah Eclipse https://bugs.eclipse.org/bugs/show_bug.cgi?id=375421 .
Ada dua bagian untuk memperbaikinya: (1) Pertama, ADT telah diperbaiki sehingga tidak lagi memasukkan urutan ini ke dalam dokumen. Ini memastikan bahwa Anda tidak mendapatkan dokumen baru yang memicu perilaku pengeditan aneh, tetapi tidak memperbaiki dokumen lama dengan akhiran baris ini secara retroaktif, jadi jika Anda membukanya, Anda masih mendapatkan perilaku pengeditan yang aneh.
(2) Kedua, ada pemeriksaan lint baru yang mencari ujung garis putus-putus pada dokumen. Ini berjalan secara bertahap, jadi jika Anda mengedit file XML yang mengalami masalah ini, ADT akan menambahkan penanda kesalahan untuk masalah ini - bersama dengan perbaikan cepat untuk melakukan operasi pada dokumen untuk memperbaikinya.
Singkatnya: Dapatkan ADT 21 Preview 9; jalankan Lint pada proyek Anda dan cari keluhan apa pun tentang file yang berisi akhiran baris yang terputus, dan jika ditemukan, terapkan perbaikan cepat. Mulai sekarang, pengeditan lebih lanjut dengan editor tata letak akan menjaga format file tetap konsisten.
FYI, perbaikan yang relevan ada di sini: https://android-review.googlesource.com/#/c/44936/
Petunjuk untuk memperbarui Alat SDK dan plugin Eclipse ADT dengan mudah ada di sini: http://tools.android.com/preview-channel
- Tor (dari tim alat Android)
sumber
Setelah beberapa pengujian, saya menemukan bahwa opsi "Secara otomatis memformat XML yang diedit oleh editor tata letak visual" (di Preferensi | Android | Editor) mungkin menjadi penyebabnya di sini.
Dengan pengujian saya, saya telah menemukan bahwa mengubah properti (seperti layout_gravity) saat dalam mode desain Tata Letak Grafis selalu mengacaukan tampilan visual file ketika saya kembali ke mode XML (teks) saat opsi ini AKTIF tetapi bahwa saya tidak punya masalah saat dimatikan.
Jika Anda ingin memformat XML setelah Anda kembali dari mode desain Tata Letak Grafis, cukup gunakan pintasan Ctrl+ Shift+ F. Selain itu, saya tidak melihat masalah apa pun dengan menggunakan opsi "Format saat Menyimpan"; bahkan saat saya menggunakannya dalam mode Tata Letak Grafis; jadi Anda bisa menggunakan Ctrl+ Ssebagai gantinya saat Anda masih dalam mode Tata Letak Grafis untuk menyimpan dan memformat XML Anda.
Saya telah mencoba opsi editor lain seperti "Tampilkan indikator rentang" atau "Gunakan karakter untuk menunjukkan perubahan dalam penggaris vertikal" tetapi saya tidak melihat perbedaan dalam perilaku dengan mengaktifkan atau menonaktifkan opsi ini.
Terakhir, untuk mengoreksi tampilan visual file saat rusak; Saya menemukan bahwa menggunakan pintasan: Ctrl+ A, Ctrl+ C, Ctrl+ Vsedikit lebih mudah daripada menutup / membuka kembali file. Ini sama dengan membuat Select All, Copy, Paste; secara efektif menyalin seluruh file XML ke dirinya sendiri.
sumber
Masih mengalami bug ini di Juno (Eclipse 4.2.0, ADT r20).
Perbaikan saya: Buka Jendela -> Preferensi -> Android -> Editor. Saya mencentang "Format XML menggunakan standar Android XML ..." dan "Gunakan setelan Eclipse untuk indentasi ...." . Ini memecahkan masalah saya.
sumber
>
) dan tanda kurung tutup tag mandiri (/>
) untuk menentukan apakah akan mendahului dengan spasi (opsi terbatas pada keduanya atau tidak keduanya). Sepertinya masalah sepele, tetapi untuk beberapa alasan saya merasa sangat menjengkelkan.EDIT: berisi metode yang lebih cepat, jadi itu dibawa ke atas:
Ctrl+ F -> isi seperti itu:
Asli ada di sini: Tapi jangan sembunyikan masalah itu, jika Anda dapat memperbaikinya. Beberapa kali bahkan menutup file XML tidak membantu.
Untuk memperbaikinya mari kita lihat alasannya. Pertama-tama Nyalakan "Tampilkan Karakter Ruang Kosong" ( Jendela> Preferensi> Umum> Editor> Editor Teks> Tampilkan karakter spasi kosong )
Kemudian kembali ke file XML Anda.
Dalam gambar berskala Anda mungkin melihat perbedaan "\ n" -warna simbol;
lalu letakkan kursor ke simbol itu, yang lebih gelap.
lihat, dua baris dipilih 0o ... itu mungkin alasannya!
jadi hapus saja, dan tekan tombol "Enter" atau "Return" untuk menambahkan simbol "\ n".
Semoga membantu Anda.
Anda juga dapat menemukan simbol garis akhir lainnya:
Hapus saja juga, dan XML Anda akan terlihat bagus!
PS maaf untuk hyperlink, saya pemula dan SO saya tidak dapat mengunggah gambar atau lebih dari 2 tautan. jadi harap Anda mengerti maksudnya tanpa gambar tambahan;)
PPS Thx untuk orang yang memilih, sekarang saya bisa memberikan ini dengan gambar.
sumber
Saya mengalami kesulitan yang sama dan akhirnya menemukan solusinya: Klik kanan di editor, pilih
Source/Cleanup Document
.sumber
Saya memiliki masalah yang sama. Langkah-langkah berikut adalah solusinya. Tautan menyarankan ini berfungsi untuk orang lain.
Perhatikan ada 2 binding untuk masing-masing dari 3 perintah tersebut
Pada titik ini Anda seharusnya hanya memiliki 2 binding yang disetel untuk melakukan salin / tempel (yaitu, ctl + c / ctl + v)
Solusi ini ditemukan di sini .
sumber
Saat bug ini muncul dengan versi baru ADT (yang wajib diperbaiki dan bug tidak sering muncul), gunakan saja alat Lint untuk memperbaikinya ..
Temukan di peringatan Lint dan klik ikon bola lampu kuning di pojok kanan atas daftar peringatan Lint tersebut ..
Semoga bisa membantu seseorang
sumber