Melhor maneira de adicionar Activity a um projeto Android no Eclipse?

189

Ao adicionar uma atividade a um projeto Android existente, crio manualmente uma nova classe - essa é a melhor / preferida? Como os outros lidam com isso?

Eno
fonte

Respostas:

381

Você pode usar a caixa de diálogo "Nova classe", mas isso deixa outras etapas que você precisa executar manualmente (por exemplo, adicionando uma entrada ao arquivo de manifesto). Se você deseja que essas etapas sejam automatizadas, é possível criar a atividade por meio do editor de manifesto, assim:

  1. Clique duas vezes em AndroidManifest.xml no explorador de pacotes.
  2. Clique na guia "Aplicativo" do editor de manifesto
  3. Clique em "Adicionar .." sob o cabeçalho "Nós de aplicativos" (canto inferior esquerdo da tela)
  4. Escolha Atividade na lista da caixa de diálogo exibida (se você tiver a opção, deseja criar um novo elemento de nível superior)
  5. Clique no link "Nome *" no cabeçalho "Atributos para" (canto inferior direito da janela) para criar uma classe para a nova atividade.

Quando você clica em Concluir na caixa de diálogo da nova classe, ele é direcionado à sua nova classe de atividade para que você possa começar a codificar.

Cinco etapas podem parecer muito, mas estou apenas tentando ser mais detalhado aqui para que fique claro. É bem rápido quando você realmente faz isso.

Wilka
fonte
23
Uma ressalva é que você deve se lembrar de acrescentar o "." ao seu nome da atividade, ou você terminará com todo tipo de mensagem de erro sem sentido.
B. Clay Shannon
Eu tentei fazer isso com o Eclipse 3.5.2 no Ubuntu 10.04. Quando a caixa de diálogo Adicionar aparece, há duas seleções ... Não, agora apenas uma "Crie um novo elemento no nível superior, no Aplicativo". É baixo que exista um campo de entrada de texto e, abaixo dele, uma caixa com seleções de Atividade, Alias ​​de Atividade, MetaDados e assim por diante. Abaixo disso, existem botões para "Cancelar" e "OK". Após o primeiro caractere inserido no campo de texto, todas as seleções desaparecem e o botão "OK" fica cinza. Bug ou estou fazendo errado? Thx, hank
HankB
4
Assim: Intent intent = new Intent (OldActivity.this, NewActivity.class); startActivity (intenção); Não há necessidade de gritar;)
user460847 16/07/12
1
@ Eduardo, certifique-se de clicar no link Nome * no canto inferior direito, que deve abrir uma janela de criação de classe com o botão "Concluir".
Will Andrew
2
ele não cria o layout de atividade que é muito importante. melhor é desta forma stackoverflow.com/questions/6253578/…
coto
88

Agora é muito mais fácil fazer isso no Eclipse agora. Basta clicar com o botão direito do mouse no pacote que conterá sua nova atividade. Novo -> Outro -> (Na guia Android) Android Activity.

E isso é tudo. Sua nova atividade também é adicionada automaticamente ao arquivo de manifesto.

berkuqo
fonte
1
você precisa adicionar explicitamente no arquivo de manifesto as informações da sua atividade. Não está sendo adicionado automaticamente.
Akshay
9
Depois de Novo -> Outro -> Atividade Android -> Atividade em branco e dando um nome único, na próxima etapa, você verá que o eclipse mostra uma lista de "alterações a serem executadas". Nesta lista, você pode ver o arquivo de manifesto, strings.xml etc já marcado. Então, a menos que você desmarque-los, ele é adicionado automaticamente
berkuqo
2
E se você quiser que a atividade seja criada em um pacote específico?
Mr_and_Mrs_D
15

Um método fácil sugerido pela Comunidade de desenvolvedores do Google Android.

insira a descrição da imagem aqui

Shankar Damodaran
fonte
1
FYI, esta opção não existia quando eu comecei a construir aplicativos Android em 2009 :-)
Eno
Só agora estou descobrindo isso. A maldição de ser um dos primeiros a adotar - você não percebe as novidades.
Edward Falk
4

Eu apenas uso a caixa de diálogo "Nova classe" no Eclipse e defino a classe base como Activity. Não conheço outra maneira de fazer isso. Que outro método você espera estar disponível?

Mark B
fonte
1
Só estou curioso se talvez houvesse um plugin que automatizasse parte dele ou fornecesse um assistente passo a passo.
Eno
3

As classes R. * são geradas dinamicamente. Deixo a opção "Criar automaticamente" no menu Projeto para que as minhas classes R. * estejam sempre atualizadas.

Além disso, ao criar novas Atividades, copio e renomeio as antigas, especialmente se elas forem semelhantes à nova Atividade que eu preciso, porque o Eclipse renomeia tudo para você.

Caso contrário, como já foi dito, o comando Arquivo-> Novo-> Classe funcionará bem e criará seu arquivo para você, incluindo modelos para os métodos necessários com base em sua classe, herança e interfaces.

Jerry Brady
fonte
2

Para criar uma nova atividade, basta clicar em ctrl + N, uma janela é exibida, selecione android, em seguida, outra janela é exibida, com o nome dessa atividade secundária.

uday
fonte
1

Conheço que não há nenhuma ferramenta usada especificamente para criar classes de atividades. Basta usar a opção 'Nova classe' no Eclipse e definir a classe base como 'Atividade'.

O pensamento aqui é um assistente como ferramenta ao criar / editar o layout xml usado por uma atividade. Para usar esta ferramenta para criar um layout xml, use a opção em 'Novo' de 'Arquivo XML do Android'. Essa ferramenta permitirá criar um pouco do layout básico da exibição.

Jason D.
fonte
2
Parece que o IntelliJ IDEA possui um assistente para criar atividades - consulte jetbrains.com/idea/features/google_android.html
Eno