Here I want to open fragment inside RecycleView but its show error but when I open activity its work here. When try to open a fragment with here of fragment manager the Recycler view class can not resolve to getFragmentManager() method inside it. Kindly provide a solution for it
public class AdapterMudra extends RecyclerView.Adapter<AdapterMudra.ReyclerViewHolder> {
private LayoutInflater layoutInflater;
private Context context;
private ArrayList<ItemMudra> items;
public AdapterMudra(Context context, ArrayList<ItemMudra> items) {
this.layoutInflater = LayoutInflater.from(context);
this.context = context;
this.items = items;
}
@Override
public ReyclerViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View item = layoutInflater.inflate(R.layout.item_recycler_view, parent, false);
return new ReyclerViewHolder(item);
}
@Override
public void onBindViewHolder(final ReyclerViewHolder holder, int position) {
ItemMudra item = items.get(position);
holder.image.setImageResource(item.getDrawableMudra());
holder.appName.setText(item.getNameMudra());
}
@Override
public int getItemCount() {
return items.size();
}
class ReyclerViewHolder extends RecyclerView.ViewHolder {
private ImageView image;
private TextView appName;
private ReyclerViewHolder(final View v) {
super(v);
image = (ImageView) v.findViewById(R.id.image);
MyName = (TextView) v.findViewById(R.id.my_name);
v.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(MyName.getText().toString()=="XYZ")
{
***//Fragment Not open here show error////
***
Here I want to call Fragment but its show error in GetFragment Manager***
Fragment fragment= new XYZ();
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.fragment_container, fragment);
transaction.addToBackStack(null); // this will manage backstack
transaction.commit();
}
if(MyName.getText().toString()=="ABC")
{
*** //Here Its Work When I open activity inside it***
Intent intent=new Intent(v.getContext(),ExtraActivityFormTesting.class);
context.startActivity(intent);
}
}
});
}
}
}