Не получается сослаться на Listener из метода create во ViewHoldere
Не получается сослаться на Listener из метода create во ViewHoldere.
Метод внизу кода, место выделил вопросами. Пишет "non-static field myListener cannot be referenced from a static context"
Я новичок, запутался, подскажите плиз что сделать чтобы повесить листенер. Спасибо.
public class WordViewHolder extends RecyclerView.ViewHolder {
private final TextView tvSwedish;
private final Switch btnSwitch;
private OnToggleChangeListener myListener;
public interface OnToggleChangeListener {
void onToggleChange(int level, boolean isChecked);
}
private WordViewHolder(@NonNull View itemView, OnToggleChangeListener listener) {
super(itemView);
tvSwedish = itemView.findViewById(R.id.text_view_swedish);
btnSwitch = itemView.findViewById(R.id.btn_switch);
myListener = listener;
}
public void bind(String wordSwedish, String wordNativ, int wordLevel) {
tvSwedish.setText(wordSwedish);
btnSwitch.setOnCheckedChangeListener((buttonView, isChecked) -> {
if (isChecked) {
myListener.onToggleChange(wordLevel, true);
}
});
}
static WordViewHolder create(ViewGroup parent) {
View view = LayoutInflater.from(parent.getContext())
.inflate(R.layout.word_item, parent, false);
return new WordViewHolder(view, ???WordViewHolder.myListener???);
}
}