Programação Java para Desenvolvedores Android For Dummies

"Eu tenho que criar uma melhorada para

declaração. Alguém pode me lembrar como codificar uma melhorada para declaração? E enquanto você está nisso, como eu posso pegar uma exceção? Onde posso encontrar todas as coisas que Java rapidamente? "

Você encontra tudo isso bem aqui nesta folha de fraude. O programa Java nesta folha de fraude contém trechos de código que representa muitos dos recursos de linguagem mais importantes do Java, incluindo switches, cordas, intervalos, E se . . . outro declarações e matrizes. Como um bônus adicional, o programa contém ainda uma referência irônica ao clássico filme dos irmãos Marx, Animal Crackers. Apreciar!

classe CheatSheet pacote com.example.cheetsheet-import java.util.ArrayList-import javax.swing.JOptionPane-pública {int myInt = 42-double myDouble = 27649,00-boolean myBoolean = true-public void main (String [] args) estáticos {new CheatSheet () -} CheatSheet pública () {char MyChar = 'B'-string myString = "Olá" -ArrayList myList = new ArrayList() -String [] MyArray = { "Isso", "é", "um", "matriz". } -System.out.println (MyInt) -System.out.println (MyChar) -JOptionPane.showMessageDialog (null, myString) -System.out.println (myInt + "" + minhaString + "" + myDouble) -String stringIn = JOptionPane.showInputDialog ( "Introduza um número de 1 a 10") - try {myInt = Integer.parseInt (stringIn) -} catch (NumberFormatException e) {e.printStackTrace () -} if (myInt lt; 5) {System.out.println ( "Small") -} else {System.out.println ( "Large") -} if (myBoolean) {System.out.println ( "Sim") -} switch (myInt) {case 1: System.out.println ( "One") - break-case 2: case 3: System.out.println ( "Um pequeno número") - break-padrão: System.out.println ( "muito" ) -break-} for (int i = 0- i lt; 10- i ++) {System.out.print (i) -System.out.print ( "") -} System.out.printlnl () - int i = 0-tempo (i lt; 10) {System.out.println (i ++ + "") -} System.out.println () - int j = 0-do {System.out.println (j ++) - System.out.print (j lt; = 9 ",": "") -} enquanto (J? lt; 10) -System.out.println () - myList.add ( "Three") -myList.add ( "Cheers") -myList.add ( "de") -myList.add ( "Captain") -myList.add ( "Spaulding") - para (string palavra: myList) {System.out.println (word) -} System.out.println () - System.out.println (addPeriod ( "Spaulding")) - para (int n = 0- n lt; myArray.length- n ++) {System.out.println (myArray [n]) -} System.out.println () -} Cadeia addPeriod (string String) {return cadeia + "." -}}

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.

Voltando padrão do Oracle Java em Java Android

Aqui está o cenário: Você tem um killer app, escrito em Java. O aplicativo é executado nos sistemas operacionais Windows e Macintosh. O aplicativo não pode ser executado em um dispositivo móvel (porque os programas Java SE não rodam em dispositivos móveis).

Você quer saber como o aplicativo parece quando ele é executado em um dispositivo Android. E aqui está mais uma coisa: Você não quer fazer qualquer reflexão séria. Isso envolveria muito estresse!

Um programa Java para um computador desktop ou laptop

você pode rapidamente e mecanicamente transformar o aplicativo em um aplicativo Android? Você pode. Comece com o programa simples nesta lista.

pacote com.allmycode.tickets-import classe javax.swing.JOptionPane-pública Preço do ingresso {public static void main (String [] args) {String ageString-int preço-ageString age-String = JOptionPane.showInputDialog ( "Age?") - idade = Integer.parseInt (ageString) -se (idade lt; 18 || 65 lt; = idade) {price = "$ 7,00" -} else {price = "$ 10,00" -} JOptionPane.showMessageDialog (null, preço, "O preço do bilhete", JOptionPane.INFORMATION_MESSAGE) -}}

O código nesta lista solicita ao usuário um número (a idade do usuário). Se o usuário é uma criança ou um idoso, o preço do bilhete é de apenas US $ 7,00. Caso contrário, o preço do bilhete é de R $ 10,00.

Para converter este anúncio em um aplicativo Android, faça o seguinte:

  1. Usando o Eclipse, crie um projeto Android.

  2. No arquivo de layout principal da atividade, criar pelo menos três widgets: uma Editar texto widget, um Botão widget, e uma TextView ferramenta.

UMA res / layout / activity_main.xml Arquivo

Aqui está um arquivo de layout amostra.

android: onclick = "whenButtonclicked"android: text = "@ Cordas / apresentar"/> 

Dentro este lno existentes, the editText1 campo é onde o usuário digita sua idade. O usuário clica no button1 widget para dizer o aplicativo para calcular o preço do bilhete, e então o preço do bilhete aparece no textView1 campo.

Na próxima etapa, você dá sentido à @corda coisas a partir desta segunda lista.

A / valores / arquivo strings.xml res

Adicionar corda elementos para o aplicativo de strings.xml arquivo, como mostrado na esta listagem.

lt;? xml version = "1.0" encoding = "utf-8">Preço do bilheteConfiguraçõesOlá Mundo!Informe a sua idade aquiEnviarPreço do bilhete

As linhas em negrito nesta lista fornecem significados para os nomes @ Cordas / enter_age, @ Cordas / apresentar, e @ Cordas / ticket_price no arquivo de layout da atividade.

Esta é a sua chance de fazer seu aplicativo útil para os leitores de todo o mundo. Por exemplo, para criar a tradução francesa do seu aplicativo, adicione uma res / valores-fr diretório para o projeto. Em um strings.xml arquivar na res / valores-fr diretório, use os mesmos atributos de nome (enter_age, enviar, e preço do bilhete). Mas entre cada marca de início e a marca final, coloque a tradução francesa do texto que aparece na tela do usuário. Quando os clientes de língua francesa usar a sua aplicação, eles vêem o texto na sua língua nativa.

A principal atividade

Adicione código para arquivo Java principal da atividade, como mostrado nesta listagem.

pacote com.example.ticketprice-import android.app.Activity-import android.os.Bundle-importação android.view.Menu-importação android.view.View-importação android.widget.EditText-import android.widget.TextView-pública classe MainActivity estende Atividade { EditText editText- TextView textView-@Overrideprotected OnCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState) -setContentView void (R.layout.activity_main) -EditText = (EditText) findViewById (R.id.editText1) -textView = (TextView) findViewById (R.id.textView1) -} vazio whenButtonclicked (Vista) pública {Cordas ageString-int à idadepreço- seqüênciaageString = editText.getText toString () (). -idade = Integer.parseInt (ageString) -se (idade lt; 18 || 65 lt; = idade) { price = "$ 7,00" -} outro { price = "$ 10,00" -}textView.setText (preço) - }@Overridepublic Boolean onCreateOptionsMenu (menu Menu) {getMenuInflater (). Inflar (R.menu.main, menu) -Retornar verdade-}}

Na Listagem 2, o botão de onclick atributo tem valor whenButtonclicked. Assim, na Listagem 4, você responde a um clique do botão com o seu novo whenButtonclicked método. este whenButtonclicked método contém a maioria das declarações que estavam em seu programa padrão original Java. A grande diferença é a maneira que você começa de texto do usuário, ea maneira como você exibir os resultados na tela do usuário.

  • No programa Java padrão que você usa JOptionPane para criar caixas de diálogo. As caixas de pedir ao utilizador para a entrada, e exibir os resultados do programa.

  • No programa Java Android, você usa os widgets na tela do atividade para entrada e saída. tendo declarado editar texto perto do início do código, você chama editText.getText (). toString () para buscar a entrada do usuário. E ter declarado textView perto do início do código, você chama textView.setText (preço) para exibir os resultados do programa.

E aí está - um programa Android a partir de um programa Java padrão!

menu