Como criar um Really Simple App Android

Então, você quer ver os fundamentos do desenvolvimento app Android em um pequeno exemplo? Como sobre o aplicativo que Eclipse cria automaticamente para você? Tão simples? Como sobre a adição de um botão e um menu?

Este aplicativo de exemplo tem três estados. Na primeira, você verá um botão com as palavras Clique me na sua face. Quando você clica no botão, o texto do botão muda para Eu tenho clicado.

Na maioria dos dispositivos Android mais recentes, você invoca o menu da atividade, clicando em um ícone pequeno em um canto da tela da atividade. (Normalmente, o ícone contém três pontos em uma linha vertical.) Ao clicar neste ícone do menu, a atividade simples mostra apenas uma opção - a opção de Repor. No aplicativo de exemplo, quando você clique em Redefinir, o texto do botão reverte para Clique me.

A principal atividade do aplicativo simples

Este anúncio contém a actividade principal do aplicativo. As linhas que você digita-se são definidos em negrito. As outras linhas (a linha que o Eclipse cria automaticamente quando você inicia um novo projeto Android) estão em fonte normal.

pacote org.allyourcode.simpleactivity-import android.app.Activity-import android.os.Bundle-import android.view.Menu-import android.view.MenuItem-import android.view.View-import android.widget.Button-pública classe MainActivity estende Atividade { botão botão-@Overrideprotected OnCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState) -setContentView void (R.layout.activity_main) -= botão (Button) findViewById (R.id.button1) -} @Overridepublic Boolean onCreateOptionsMenu (menu Menu) {getMenuInflater (). Inflar (R.menu.main, menu) -Retornar verdade-} vazio whenButtonclicked (Vista) pública {button.setText (R.string.ive_been_clicked) - }  @Sobrepor boolean pública onOptionsItemSelected (item de MenuItem) {Se (item.getItemId () == R.id.menu_reset) { button.setText (R.string.click_me) -}retorno super.onOptionsItemSelected (item) - }}

Para fazer este trabalho de código, você tem que definir alguns presentinhos extras. Em particular, é necessário o seguinte:

  • Um botão no layout de seu principal da atividade

  • Um arquivo de layout para seu menu

  • Alguns valores de cadeia

Você pode criar todas estas coisas com ferramentas point-and-click do Eclipse, mas aqui, você pode ver o código. (Às vezes, é mais fácil de digitar o código do que fazer um monte de apontar e clicar.)

arquivo de layout principal da atividade

Este anúncio contém o código para o layout a principal atividade.

android: id = "@ + id / button1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_below="@+id/textView1"android:layout_centerHorizontal="true"android:layout_marginTop="32dp"android: onclick = "whenButtonclicked"android: text = "@ cordas / click_me" />

Você colocar o código na Listagem 2 no seu projeto res / layout / activity_main.xml Arquivo. Muitas variações sobre o código na Listagem 2 trabalho igualmente bem. Na Listagem 2, os elementos importantes são aqueles em negrito - um id para o botão (@ + Id / button1 ou @ + Id /tanto faz), O nome do método para lidar com um clique de botão, eo texto na face do botão.

arquivo de layout do menu de

O layout para o menu pertence em seu projeto de res / Menu diretório. Este anúncio contém o código.

lt;? xml version = "1.0" encoding = "utf-8">

arquivo de layout de um menu contém um ou mais item elementos. No aplicativo simples deste artigo, o menu tem apenas uma opção. Assim, o arquivo de layout tem apenas um item elemento.

O exemplo é item elemento tem dois atributos:

  • o android: id atributo identifica o item.

    Na atividade principal, o android: id valor decide se o usuário tem ou não tem clicado este item de menu:

Se (item.getItemId () == R.id.menu_reset)

  • o android: título atributo determina o texto que aparece junto com a opção do menu.

    Na Listagem 3, o nome @ Corda / reset refere-se a um elemento adicionado ao projeto de strings.xml Arquivo.

cadeias de texto do projeto

o strings.xml arquivo vive no projeto de res / valores diretório. No strings.xml arquivo, todas as etiquetas de texto utilizados no código são definidos. (Veja a listagem a seguir.)

lt;? xml version = "1.0" encoding = "utf-8">Atividade simplesConfiguraçõesOlá Mundo!Clique meI 've foi clicadoReiniciar

Em outra parte do projeto, o nome atributos nesta Lista é usado em vez das cordas Clique me, Eu tenho clicado, e Reiniciar. Por exemplo, os nomes R.string.click_me e R.string.ive_been_clicked aparecem na lista principal de actividade e arquivo de layout a principal atividade. Ea referência @ Corda / reset aparece na lista de arquivos de layout do menu.

Uma marca de aspas duplas tem um significado especial em documentos XML. Por exemplo, nas cadeias de texto listando, as aspas na name = "click_me" dizer-lhe onde o nome o valor do atributo começa e termina. Da mesma forma, uma aspa simples (sem a barra invertida) tem um significado especial em XML. Assim, nas cadeias de texto, use a combinação 'para colocar um apóstrofo na palavra Eu tenho. A combinação ' é chamado um escapar seqüência. A seqüência de escape diz ao computador que você está usando uma aspa única comum, sem nenhum significado especial destinado.

menu