Recyclerview Tarea
Recyclerview Tarea
Recyclerview Tarea
ArrayList<PersonajeVo> listaPersonajes;
@Override
public ViewHolderPersonajes onCreateViewHolder( ViewGroup parent,
int i) {
View view=
LayoutInflater.from(parent.getContext()).inflate(R.layout.iem_list_per
sonajes,null,false);
return new ViewHolderPersonajes(view);
}
@Override
public void onBindViewHolder( ViewHolderPersonajes holder, int
position) {
holder.etiNombre.setText(listaPersonajes.get(position).getNombre());
holder.etiInformacion.setText(listaPersonajes.get(position).getInfo())
;
holder.foto.setImageResource(listaPersonajes.get(position).getFoto());
@Override
public int getItemCount() {
return listaPersonajes.size();
}
@Override
public void onClick(View v) {
Context context = v.getContext();
int position = getAdapterPosition();
PersonajeVo personaje = listaPersonajes.get(position);
Intent intent = new Intent(v.getContext(),
EditarPersonaje.class);
intent.putExtra(Nombre, personaje.getNombre());
intent.putExtra(descripcion,personaje.getInfo());
context.startActivity(intent);
}
}
}
clase EditarPersonaje
TextView tvnombre;
TextView tvinfo;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_editar_personaje);
nombre = getIntent().getStringExtra(Nombre);
info = getIntent().getStringExtra(descripcion);
tvnombre = (TextView)findViewById(R.id.textView);
tvnombre.setText(nombre);
tvinfo = (TextView)findViewById(R.id.textView2);
tvinfo.setText(info);
clase MainActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listaPersonajes=new ArrayList<>();
recyclerPersonajes= (RecyclerView)
findViewById(R.id.RecyclerId);
recyclerPersonajes.setLayoutManager(new
LinearLayoutManager(this));
llenarPersonajes();
inicializaAdaptador();
AdaptadorPersonajes adapter=new
AdaptadorPersonajes(listaPersonajes);
recyclerPersonajes.setAdapter(adapter);
}
private void inicializaAdaptador() {
adaptador = new AdaptadorPersonajes(listaPersonajes);
recyclerPersonajes.setAdapter(adaptador);
}
private ItemTouchHelper.Callback createHelperCallback(){
ItemTouchHelper.SimpleCallback simpleItemTouchCallback =
new ItemTouchHelper.SimpleCallback(ItemTouchHelper.UP
| ItemTouchHelper.DOWN,
ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT){
@Override
public boolean onMove(RecyclerView recyclerView,
RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
moveItem(viewHolder.getAdapterPosition(),target.getAdapterPosition());
return false;
}
@Override
public void onSwiped(RecyclerView.ViewHolder
viewHolder, int direction) {
deleteItem(viewHolder.getAdapterPosition());
}
};
return simpleItemTouchCallback;
}
private void moveItem(int oldPos, int newPos){
PersonajeVo item= (PersonajeVo)listaPersonajes.get(oldPos);
listaPersonajes.remove(oldPos);
listaPersonajes.add(newPos, item);
adaptador.notifyItemMoved(oldPos, newPos);
}
listaPersonajes.remove(position);
adaptador.notifyItemRemoved(position);
clase PersonajeVo
public class PersonajeVo {
public PersonajeVo(){
implementation 'com.android.support:recyclerview-v7:28.0.0'