Às vezes, meu código se move por conta própria ou simplesmente desaparece no editor XML do Eclipse.
Quando realço o código afetado, as linhas realçadas tentam se corrigir. Mas quando eu rolo ou arrasto o mouse na direção oposta, o código muda novamente. Em essência, terei linhas de código repetidas, ausentes e interrompidas sendo exibidas a partir de um arquivo sem erros. Os arquivos afetados são compilados e se eu fechar / reabri-los, esse problema vai embora, por enquanto. Alguma ideia do que está acontecendo?
Adição: Jeff Axelrod forneceu um link para um novo relatório de bug com o Google.
Respostas:
Este bug foi (finalmente) corrigido no ADT 21. A correção agora está disponível no ADT 21 Preview 9, postado alguns minutos atrás, aqui: https://android-review.googlesource.com/#/c/44936/1
O motivo de você obter artefatos visuais estranhos é que, se um arquivo contém terminações de linha DOS quebradas (vários retornos de carro sem uma nova linha para cada retorno de carro), o Eclipse fica muito confuso. Esse é o problema do Eclipse https://bugs.eclipse.org/bugs/show_bug.cgi?id=375421 .
Há duas partes para a correção: (1) Primeiro, o ADT foi corrigido de forma que não introduza mais essas sequências \ r \ r no documento. Isso garante que você não obtenha novos documentos, o que desencadeia o comportamento de edição estranho, mas não corrige retroativamente documentos mais antigos com essas terminações de linha, portanto, se você abri-los, ainda terá um comportamento de edição estranho.
(2) Em segundo lugar, há uma nova verificação de lint que procura terminações de linhas quebradas em documentos. Isso é executado de forma incremental, portanto, se você editar um arquivo XML com esse problema, o ADT adicionará um marcador de erro para esse problema - junto com uma correção rápida para realizar uma cirurgia no documento para corrigi-lo.
Resumindo: Obtenha ADT 21 Preview 9; execute o Lint em seus projetos e procure por reclamações sobre arquivos que contêm terminações de linha quebradas e, se encontrar alguma, aplique a correção rápida. A partir de agora, outras edições com o editor de layout devem manter os arquivos formatados de forma consistente.
Para sua informação, a correção relevante está aqui: https://android-review.googlesource.com/#/c/44936/
As instruções para atualizar facilmente as ferramentas SDK e o plug-in Eclipse ADT estão aqui: http://tools.android.com/preview-channel
- Tor (da equipe de ferramentas do Android)
fonte
Após alguns testes, descobri que a opção "Formatar automaticamente o XML editado pelo editor de layout visual" (em Preferências | Android | Editores) pode ser a culpada aqui.
Com meus testes, descobri que alterar uma propriedade (como layout_gravity) enquanto no modo de design de Layout gráfico sempre atrapalha a exibição visual do arquivo quando eu volto para o modo XML (texto) quando esta opção está ativada, mas que não tenho problemas quando está desligado.
Se você deseja formatar o XML ao retornar do modo de design de Layout Gráfico, simplesmente use o atalho Ctrl+ Shift+ F. Além disso, não vi nenhum problema em usar a opção "Formatar ao Salvar"; mesmo quando o uso no modo de Layout Gráfico; então você pode usar Ctrl+S enquanto ainda está no modo de Layout gráfico para salvar e formatar seu XML.
Eu tentei outras opções do editor como "Mostrar indicador de intervalo" ou "Usar caracteres para mostrar mudanças na régua vertical", mas não vi nenhuma diferença no comportamento ao ativar ou desativar essas opções.
Finalmente, para corrigir a exibição visual do arquivo quando está corrompido; Descobri que usar o atalho: Ctrl+ A, Ctrl+ C, Ctrl+ Vé um pouco mais fácil do que fechar / reabrir o arquivo. Isso é equivalente a selecionar tudo, copiar, colar; copiando efetivamente todo o arquivo XML sobre ele mesmo.
fonte
Ainda experimentando esse bug no Juno (Eclipse 4.2.0, ADT r20).
Minha correção: Vá para Janela -> Preferências -> Android -> Editores. Eu marquei "Formatar XML usando XML padrão do Android ..." e "Usar configurações do Eclipse para recuo ..." . Isso resolveu o problema para mim.
fonte
>
) e colchete de fechamento de tag autônomo (/>
) para determinar se deve preceder com um espaço (a opção é limitada a ambos ou nenhum). Parece um assunto trivial, mas por algum motivo acho muito irritante.EDITAR: contém o método mais rápido, por isso foi trazido para o topo:
Ctrl+ F -> preencher assim:
O original estava aqui: apenas não esconda esse problema, se você puder corrigi-lo. Algumas vezes, mesmo fechar o arquivo XML não ajudava.
Para consertar, vamos ver o motivo disso. Em primeiro lugar, ative "Mostrar caracteres de espaço em branco" ( Janela> Preferências> Geral> Editores> Editores de texto> Mostrar caracteres de espaço em branco )
Então, de volta ao seu arquivo XML.
Na imagem em escala, você pode ver a diferença nas cores dos símbolos "\ n";
em seguida, coloque o cursor sobre esse símbolo, que está mais escuro.
olha, foram selecionadas duas linhas 0o ... pode ser esse o motivo!
então apenas exclua-o e pressione o botão "Enter" ou "Retornar" para adicionar o símbolo "\ n".
Espero que ajude você.
também você pode encontrar o outro símbolo da linha final:
Basta excluí-lo também e seu XML terá uma ótima aparência!
PS desculpem pelos hiperlinks, sou novato e no SO não consigo fazer upload de imagens ou mais de 2 links. então espero que você entenda sem fotos adicionais;)
PPS Obrigado ao cara que votou, agora posso fornecer as imagens.
fonte
Tive a mesma dificuldade e finalmente encontrei a solução: Clique com o botão direito no editor, selecione
Source/Cleanup Document
.fonte
Eu tive o mesmo problema. As etapas a seguir foram a solução. O link sugere que funcionou para outros.
Observe que há 2 ligações para cada um dos 3 comandos
Neste ponto, você deve ter apenas 2 ligações definidas para executar copiar / colar (ou seja, ctl + c / ctl + v)
Esta solução foi encontrada aqui .
fonte
Quando esse bug aparecer com novas versões do ADT (que são obrigatórias para correção e onde o bug não deve aparecer com frequência), use a ferramenta Lint para corrigi-lo.
Encontre-o em avisos de fiapos e clique em lâmpada amarela no ícone de no canto superior direito da lista de avisos de Lint.
Espero que ajude alguém
fonte