Criando um Novo Projeto Para o Android
Vamos tentar fazer um aplicativo onde podemos encontrar academias para treinar e ver opiniões sobre elas. Digo tentar fazer porque nunca fiz um aplicativo para isto, então vou fazendo e escrevendo o artigo.
Vamos chamar este aplicativo de OndeTreinar, o aplicativo deve mostrar o telefone, o endereço ou algum trajeto para chegar até a academia.
Podemos começar com três telas básicas, uma para buscar academias, outra para listar os resultados e uma para mostrar os dados completos de uma academia específica.
Agora vamos criar o projeto e começar com a programação. Não vou mostrar como criar um projeto e chegar na fase de programação da tela e comportamento porque nos últimos três artigos foi exatamente isto que fizemos.
Artigo 1 – https://micheladrianomedeiros.com.br/blog/android/
Artigo 2 – https://micheladrianomedeiros.com.br/blog/android-2/
Artigo 3 – https://micheladrianomedeiros.com.br/blog/android-3/
Vamos montar a tela de busca por academia. Vamos ter um campo de pesquisa para digitar o nome da academia ou cidade. Vamos adicionar também o tipo de academia que será um campo que irá mostrar alguns tipos de academia.
Os tipos serão: low cost, full service, boutique, academia de nicho, academia de musculação, academia de dança, estúdio de pilates, academia de luta, crossfit, zumba, ballet fitness, samba e muay thai, spinning, artes marciais, hidroginástica e todos.
Caso queira conhecer as diferenças dos tipos de academia acesse:
Conheça os 4 modelos de academias que bombam no mercado e suas diferenças
Conheça os principais tipos de academia de ginástica
5 modalidades de academia para tornar os treinos mais divertidos
Modalidades de academia: escolha a perfeita para você
E por último um botão para clicar e fazer a pesquisa.
Na pasta res->values tem o arquivo chamado strings.xml. Dentro deste arquivo faça a seguinte programação:
<resources>
<string name="app_name">Onde Treinar</string>
<string-array name="types_gym">
<item>Todos</item>
<item>Academia de Dança</item>
<item>Academia de Luta</item>
<item>Academia de Musculação</item>
<item>Academia de Nicho</item>
<item>Artes Marciais</item>
<item>Ballet Fitness</item>
<item>Boutique</item>
<item>Crossfit</item>
<item>Estúdio de Pilates</item>
<item>Full Service</item>
<item>Hidroginástica</item>
<item>Low Cost</item>
<item>Muay Thai</item>
<item>Samba</item>
<item>Spinning</item>
<item>Zumba</item>
</string-array>
</resources>
O strings.xml contém o nome da aplicação e os possíveis tipos de academia que serão apresentados no componente spinner.
No arquivo activity_main.xml digite o seguinte código:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="Academia ou Local"
android:textAlignment="center"
android:textSize="18dp" />
<EditText
android:layout_margin="20dp"
android:id="@+id/search_gym"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="Tipo de Academia"
android:textAlignment="center"
android:textSize="18dp" />
<androidx.appcompat.widget.AppCompatSpinner
android:layout_margin="20dp"
android:id="@+id/spinner_type_gym"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:entries="@array/types_gym" />
<Button
android:id="@+id/button_search_gym"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:text="Procurar" />
</LinearLayout>
O MainActivity vai ficar desta maneira:
package micheladrianomedeiros.com.br.ondetreinar;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
public class MainActivity extends AppCompatActivity {
private Spinner spinnerTypesGym;
private Button buttonSearchGym;
private EditText editTextSearchGym;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editTextSearchGym = findViewById(R.id.search_gym);
spinnerTypesGym = findViewById(R.id.spinner_type_gym);
buttonSearchGym = findViewById(R.id.button_search_gym);
buttonSearchGym.setOnClickListener(buttonClickListener);
}
private View.OnClickListener buttonClickListener = new View.OnClickListener() {
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.button_search_gym:
Log.i("procurando",editTextSearchGym.getText().toString());
Log.i("tipo academia", spinnerTypesGym.getSelectedItem().toString());
Log.i("Buscar","Vamos fazer a busca");
break;
case View.NO_ID:
default:
Log.i("erro", "nada");
break;
}
}
};
}
A tela de pesquisa ficou assim:

Coloquei os Log.i para quando clicar no botão procurar, saber se a aplicação está pegando os valores que digitei e escolhi. No console saiu os resultados que eu quero pegar.

Funcionou. O problema agora é: de onde vou pegar as informações das academias para eu mostrar na tela de resultado?
Provavelmente vou ter que criar um web service para isto.





Deixe um comentário