Gente,
Estou precisando de uma luz para um trabalho.
Pois bem, criei um recyclerview e dentro desses itens criei dois botões, queria saber como eu coloco funções nos cliques desses botões. Tentei pegar os botões pelo MainActivity mas eles vem nulo, precisa pegar a posição deles também para poder removê-los da lista. obg.
public class MainActivity extends AppCompatActivity {
private RecyclerView recyclerView;
private Button mMainButton;
private Button botaoIniciar;
private Button botaoConcluir;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final TarefaDao tarefaDao = new TarefaDao(this);
List<Tarefa> tarefas = new ArrayList<Tarefa>();
List<Tarefa> tarefasAdicionadas = tarefaDao.findAll();
if (tarefasAdicionadas != null) {
tarefas.addAll(tarefasAdicionadas);
}
MyAdapter adapter = new MyAdapter(this, tarefas);
LinearLayoutManager llm = new LinearLayoutManager(this);
recyclerView = (RecyclerView) findViewById(R.id.main_recyclerview);
recyclerView.setLayoutManager(llm);
recyclerView.setAdapter(adapter);
mMainButton = (Button) findViewById(R.id.botao_nova_tarefa);
mMainButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent it = new Intent(MainActivity.this, CadastroActivity.class);
startActivity(it);
}
});
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.MyViewHolder> {
private LayoutInflater layoutInflater;
private List tarefas;
public MyAdapter(Context context, List<Tarefa> tarefas) {
this.layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
this.tarefas = tarefas;
}
@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = layoutInflater.inflate(R.layout.item_layout, parent, false);
MyViewHolder myViewHolder = new MyViewHolder(view);
return myViewHolder;
}
@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
Tarefa tarefa = tarefas.get(position);
holder.tituloView.setText(tarefa.getTitulo().toString());
holder.descricaoView.setText(tarefa.getDescricao().toString());
holder.pomodorosView.setText("Pomodoros:" + tarefa.getPomodoros().toString());
holder.imageView.setBackgroundResource(R.mipmap.ic_launcher);
}
@Override
public int getItemCount() {
return tarefas.size();
}
public class MyViewHolder extends RecyclerView.ViewHolder{
TextView tituloView;
TextView descricaoView;
TextView pomodorosView;
ImageView imageView;
public MyViewHolder (View itemView) {
super(itemView);
tituloView = (TextView) itemView.findViewById(R.id.tituloView);
descricaoView = (TextView) itemView.findViewById(R.id.descricaoView);
pomodorosView = (TextView) itemView.findViewById(R.id.pomodorosView);
imageView = (ImageView) itemView.findViewById(R.id.imageView);
}
}
}