I am trying to show a popup window at the specific view which is in recycler view but it is not showing at that position.
This is what I did to show a transparent popup window:
private void showPopup(View view) {
LayoutInflater inflater = (LayoutInflater) HomeActivity.this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
final View layout = inflater.inflate(R.layout.fadepopup, findViewById(R.id.fadePopup));
PopupWindow fadePopup = new PopupWindow(layout, 300, 500, true);
fadePopup.setBackgroundDrawable(new ColorDrawable(ContextCompat.getColor(this, android.R.color.transparent)));
fadePopup.setOutsideTouchable(true);
fadePopup.showAtLocation(view, Gravity.BOTTOM | Gravity.CENTER, 0, 0);
}
Am calling it from recycler view like:
horizontalRecyclerView.addOnItemTouchListener(new RecyclerTouchListener(getApplicationContext(), recyclerView, new RecyclerTouchListener.ClickListener() {
@Override
public void onClick(View view, int position) {
String menuTitle = menuTitles[position % menuTitles.length];
Fragment selectedFragment = null;
switch (menuTitle) {
case "Messenger":
showPopup(view);
break;
}
}
@Override
public void onLongClick(View view, int position) {
}
}));
Also, I tried with showAsDropDown
but not working.
The result is:
UPDATE:
XML code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/fadePopup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:id="@+id/messenger_item"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:background="@drawable/circular_white"
android:padding="10dp"
android:src="@drawable/nav_messanger" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:background="@drawable/circular_white"
android:padding="10dp"
android:src="@drawable/nav_contacts" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:background="@drawable/circular_white"
android:padding="10dp"
android:src="@drawable/nav_boss" />
</LinearLayout>