У меня проблемы с созданием задачи, когда я долго нажимаю на элемент, который будет удален. Я не уверен, как решить эту проблему. Видимо, это должно быть там, и я это объявил. Проверьте, где я прокомментировал. OnItemLongClicked не распознается. Вот где у меня проблемы. Я новичок в этом, поэтому, пожалуйста, помогите!
package com.example.mysimpletodo;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import java.util.List;
public class itemsAdapter extends RecyclerView.Adapter<itemsAdapter.ViewHolder> {
public interface onLongClickListener {
void onItemLongClicked(int position);
}
List<String> items;
View.OnLongClickListener longClickListener;
public itemsAdapter(List<String> items, View.OnLongClickListener longClickListener) {
this.items = items;
this.longClickListener = longClickListener;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View todoView = LayoutInflater.from(parent.getContext()).inflate(android.R.layout.simple_list_item_1, parent, false);
return new ViewHolder(todoView);
}
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
String item = items.get(position);
holder.bind(item);
}
@Override
public int getItemCount() {
return items.size();
}
class ViewHolder extends RecyclerView.ViewHolder{
TextView tvItem;
public ViewHolder(@NonNull View itemView) {
super(itemView);
tvItem = itemView.findViewById(android.R.id.text1);
}
public void bind(String item) {
tvItem.setText(item);
tvItem.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
longClickListener.OnItemLongClicked(getAdapterPosition());
//check for this line again. I have a problem here where OnItemLongClicked is not recognized and stays red. How come it is not recognizing it and it's recognized above.
return true;
}
});
}
}
}