1
resposta

Método ListaNotasAdapter() está sem parâmetro na classe ListaNotasActivity

Boa tarde,

Por gentileza, poderia fornecer uma orientação a respeito do parâmero que devo colocar no método ListaNotasAdapter() (que no caso eu coloquei como ListaNotasAdapter1() ), pois na classe ListaNotasAdapter1, foi criado um método construtor que possui como parâmetro a variável "notas", mas na tentativa de passar a variável "todasNotas" como parâmetro na classe ListaNotasActivity, a app quebrou.

Segue o código da ListaNotasActvity abaixo:

package cursoalura.com.ceep.ui.activity;

import android.os.Bundle;

import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.RecyclerView;

import java.util.List;

import cursoalura.com.ceep.R;
import cursoalura.com.ceep.ui.activity.dao.NotaDAO;
import cursoalura.com.ceep.ui.activity.model.Nota;
import cursoalura.com.ceep.ui.recyclerview.adapter.ListaNotasAdapter1;

public class ListaNotasActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_lista_notas);

        RecyclerView listaNotas = findViewById(R.id.lista_notas_recyclerview);

        NotaDAO dao = new NotaDAO();

        for (int i = 1; i <= 10000; i++) {
            dao.insere(new Nota("Titulo " + i, "Descrição" + i));
        }


        List<Nota> todasNotas = dao.todos();

        listaNotas.setAdapter(new ListaNotasAdapter1(todasNotas));

    }
}

Meu código da classe ListaNotasAdapter1 está assim:

package cursoalura.com.ceep.ui.recyclerview.adapter;

import android.view.ViewGroup;

import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;

import java.util.List;

import cursoalura.com.ceep.ui.activity.model.Nota;
import cursoalura.com.ceep.ui.activity.ui.adapter.ListaNotasAdapter;

public class ListaNotasAdapter1 extends RecyclerView.Adapter {

    private List<Nota> notas;

    public ListaNotasAdapter1(List<Nota> notas) {

        this.notas = notas;
    }


    @NonNull
    @Override
    public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        return null;
    }

    @Override
    public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {

    }

    @Override
    public int getItemCount() {

        return notas.size();
    }
}

Desde já agradeço

1 resposta

Thiago, tudo bem ?

Você retornou null no método mais importante do seu adapter onCreateViewHolder por esse motivo está quebrando.

Você deve estar recebendo um nullpointer

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software