Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Qué causa esta excepción java.lang.RuntimeException: java.lang.NoSuchMethodException: <init>

Tengo un problema con mi proyecto de firebase . He seguido los pasos en la documentación de firebase GitHub, pero tengo esta excepción

 java.lang.RuntimeException: java.lang.NoSuchMethodException: <init> [class android.view.View] 

Esta es una clase ViewHolder que no es una clase interna.

 public class ProductViewHolder extends RecyclerView.ViewHolder{ public View mView; public ImageView img; public TextView title; public TextView price; public RatingBar stars; ProductViewHolder(View itemView) { super(itemView); mView = itemView; img = (ImageView) itemView.findViewById(R.id.productImg); title = (TextView) itemView.findViewById(R.id.txtTitle); price = (TextView) itemView.findViewById(R.id.txtPrice); stars = (RatingBar) itemView.findViewById(R.id.ratingBar); } } 

Y este es el código relacionado con firebase

 @Override protected void onStart() { super.onStart(); // Recycler adapter FirebaseRecyclerAdapter<Product, ProductViewHolder> adapter = new FirebaseRecyclerAdapter<Product, ProductViewHolder>( Product.class, R.layout.product_list_item, ProductViewHolder.class, firebaseRef.child("product")) { @Override protected void populateViewHolder(ProductViewHolder productViewHolder, Product product, int i) { Picasso.with(ShopsApp.getLyShopsAppContext()) .load(product.getImgUrl()) .placeholder(R.drawable.none) .into(productViewHolder.img); productViewHolder.title.setText(product.getTitle()); productViewHolder.price.setText(product.getPrice()); productViewHolder.stars.setRating(4.0f); } }; recyclerView1.setAdapter(adapter); 

Estoy utilizando firebaseRecyclerView para rellenar el modelo de datos, y la clase viewHolder no es la clase interna de mi actividad

Nota: la excepción ocurre cuando se inicia la actividad que contiene el recyclerView .

  • Añadir elementos a Endless Scroll RecyclerView con ProgressBar en la parte inferior
  • ¿Qué es el ciclo de vida del adaptador RecyclerView?
  • ¿Cómo mostrar el número exacto de elementos en RecyclerView?
  • Clic en el elemento programáticamente en RecyclerView
  • Android RecyclerView último elemento eliminar (tiempo de ejecución) error
  • ScrollingViewBehavior para ListView
  • One Solution collect form web for “Qué causa esta excepción java.lang.RuntimeException: java.lang.NoSuchMethodException: <init>”

    Lo más probable es que su subclase ViewHolder personalizada sea:

    • Falta de un constructor public MyViewHolder(View itemView) {... } OR
    • La clase se define dentro de otra clase, en cuyo caso debe marcarla como estática public static class MyViewHolder .
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.