Escolar Documentos
Profissional Documentos
Cultura Documentos
SÃO PAULO – SP
2023
2
2. O QUE É UM RECYCLERVIEW
Após isso, escolha a opção de projeto vazio (Empty Activity), clique em “Next”.
4
Após isso, escolha um nome para seu projeto, siga as ideias básicas de colocar em
caixa alta a primeira letra de cada palavra caso seja para dar o espaço. Clique em
“Finish” e espere o Android finalizar a criação do projeto. Caso demore um pouco,
não se preocupe.
5
Após tudo ser criado, você será direcionado para o design, com a nova geração do
Android Studio, você não precisa importar a biblioteca do RecyclerView pois ele faz
isso instantaneamente. (Aperte ALT + BOTÃO ESQUERDO DO MOUSE) e arraste a
opção de RecyclerView para a tela em branca, modifique o id para “recycler” para
facilitar na hora de localizar o layout no XML.
6
Após isso vamos realizar uma classe Java para programar os itens que estarão dentro
de nosso layout. Clique na pasta “com.example.projetorecyclerview” com o botão
direito do mouse e escolha criar uma nova classe Java. Veja:
7
Depois de termos criado a classe, iremos ao layout criar mais uma página que quando
clicarmos em um dos itens sermos levados a outra tela. Para isso clique com o botão
direito do mouse em layout e escolha a opção “Layout Resource File”. Mude o nome
para “item_view” e escolha a opção de RelativeLayout, veja:
10
Nessa tela iremos adicionar uma imagem e TextViews, nesse documento iremos
adicionar os elementos em código, mas pode sim ser feito no formato de arrastar até
o design se desejado e depois acrescentar as necessidades, mas nesse formato seria
mais complicado.
<ImageView
android:id="@+id/imageview"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerVertical="true"
android:layout_marginRight="10dp"
/>
<TextView
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toEndOf="@id/imageview"
android:textColor="@color/black"
android:textSize="20dp"
tools:text="Name"
/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/email"
android:layout_toEndOf="@id/imageview"
android:layout_below="@id/name"
android:textColor="@color/black"
tools:text="exemplo@email.com"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="2dp"
android:layout_below="@id/imageview"
android:layout_marginTop="10dp"
android:background="#DAD8D8"
/>
</RelativeLayout>
11
Após isso, criaremos uma classe Java chamada “MyViewHolder” aonde teremos que
colocar essa estrutura de código:
package com.example.projetorecyclerview;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
ImageView imageView;
TextView nameView,emailView;
}
}
Agora criaremos mais uma classe Java, para esse, será interessante prestar atenção
na função implementar métodos, o qual será usado as teclas “CTRL+I”. Observe:
12
Agora vamos continuar com essa mesma estrutura, e adicionar algumas informações.
O código com todas as importações e códigos deve ficar assim:
package com.example.projetorecyclerview;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import java.util.List;
Context context;
List<Item> itens;
@NonNull
@Override
public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int
viewType) {
return new
13
MyViewHolder(LayoutInflater.from(context).inflate(R.layout.item_view,parent
,false));
}
@Override
public void onBindViewHolder(@NonNull MyViewHolder holder, int
position) {
holder.nameView.setText(itens.get(position).getName());
holder.emailView.setText(itens.get(position).getEmail());
holder.imageView.setImageResource(itens.get(position).getImage());
}
@Override
public int getItemCount() {
return itens.size();
}
}
package com.example.projetorecyclerview;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.os.Bundle;
import java.util.ArrayList;
import java.util.List;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
itens.add(new Item("Leonardo O.
Cordeiro","leozin11@gmail.com",R.drawable.glass));
itens.add(new Item("Bruna
Silva","brnslv@gmail.com",R.drawable.she));
itens.add(new Item("Jonathan Faria
","fariajonathan@etec.sp.gov.br",R.drawable.trabalhador ));
itens.add(new Item("Gabriela
Giordina","gabigio@gmail.com",R.drawable.margaret));
itens.add(new Item("Anderson
Lima","comedorcasada@gmail.com",R.drawable.man));
itens.add(new Item("Sasha
Cabrina","cabrina23@gmail.com",R.drawable.girl));
itens.add(new Item("Patrícia
Calabianco","patypaty47@gmail.com",R.drawable.garota));
itens.add(new Item("Vitor
Hashimoto","vitorbest@gmail.com",R.drawable.japan));
itens.add(new Item("Leonardo O.
Cordeiro","leozin11@gmail.com",R.drawable.glass));
itens.add(new Item("Bruna
Silva","brnslv@gmail.com",R.drawable.she));
itens.add(new Item("Jonathan Faria
","fariajonathan@etec.sp.gov.br",R.drawable.trabalhador ));
itens.add(new Item("Gabriela
Giordina","gabigio@gmail.com",R.drawable.margaret));
itens.add(new Item("Anderson
Lima","comedorcasada@gmail.com",R.drawable.man));
itens.add(new Item("Sasha
Cabrina","cabrina23@gmail.com",R.drawable.girl));
itens.add(new Item("Patrícia
Calabianco","patypaty47@gmail.com",R.drawable.garota));
recyclerView.setLayoutManager(new LinearLayoutManager(this));
recyclerView.setAdapter(new
MyAdapter(getApplicationContext(),itens));
}
}