I have an edit text at 5th position on recyclerview adapter. I need to get text from that edittext on a click of button (button is on the fragment of adapter and I need that text on that fragment
Create interface in your adapter.
public interface ClickListener {
void onItemClick(int position, View v);
}
You can implement method of interface in Recycler View Holder class of your adapter to get the text of card view as per your requirement.
@Override
public void onClick(View v) {
clickListener.onItemClick(getAdapterPosition(),v);
imageView_icon.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
clickListener.onItemClick(getAdapterPosition(), v);
}
});
}
Now, create a global static object of class ClickListner and pass it in click listner method on card clicked. Now get edittext text from particular card view on its click.
//Create global reference
private static ClickListener clickListener;
create method to detect the click in recycler view from fragment.
public void setOnItemClickListner(ClickListener clickListner) {
MainAdapter.clickListener = clickListner;
}
Now you can get the text from edit text from from bind view holder
@Override
public void onBindViewHolder(final MainViewHolder holder, final int position) {
final MainModel mainModel = modelList.get(position);
holder.cardView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
clickListener.onItemClick(holder.getAdapterPosition(), v);
editText.getText().toString();
}
});
}
It will work for you.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.