I have created a Custom listview inside the AlertDialog and set data by parsing a list. I need to get the clicked value of the individual object of that clicked row. But listView.setOnItemClickListener is not working. I have tried to solve this problem, but couldn't find a way. Please help me to solve this.
Thanks..
here is my code
AlertDialog.Builder builder = new AlertDialog.Builder(getContext());
            builder.setTitle("Select A Customer");
            //insert array to constructor
            LayoutInflater inflater = getActivity().getLayoutInflater();
            View dialogLayout = inflater.inflate(R.layout.product_list_pop_up, null);
            final CustomerPopupAdapter testAdapter = new CustomerPopupAdapter(getContext(), customers_data);
            ListView listView = dialogLayout.findViewById(R.id.product_list_view);
            TextView cancel_btn = dialogLayout.findViewById(R.id.cancel_btn);
            TextView done_btn = dialogLayout.findViewById(R.id.done_btn);
            listView.setAdapter(testAdapter);
            builder.setView(dialogLayout);
            final AlertDialog alert = builder.create();
            alert.show();
            listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                @Override
                public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                    Log.d("selected Item", "ListView ");
//                    customerName = testAdapter.getItem(position);
//                    customer_name.setText((CharSequence) testAdapter.getItem(position));
                    alert.dismiss();
                }
            });
         alert.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE | WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);
            WindowManager.LayoutParams lp = new WindowManager.LayoutParams();
            cancel_btn.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    alert.dismiss();
                }
            });
            done_btn.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    alert.dismiss();
                }
            });
here is my adapter
public class CustomerPopupAdapter extends ArrayAdapter<Customer> {
    private List<Customer> list;
    public CustomerPopupAdapter(Context context, List<Customer> test) {
        super(context, R.layout.discount_popup_row, test);
        this.list = test;
    }
    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
        LayoutInflater inflater = LayoutInflater.from(getContext());
        final Customer customer = list.get(position);
        View customRow = inflater.inflate(R.layout.customer_popup_row, parent, false);
        TextView customer_name = customRow.findViewById(R.id.customer_name);
        TextView customer_id = customRow.findViewById(R.id.customer_id);
        customer_id.setText(customer.getId());
        customer_name.setText(customer.getName());
        return customRow;
    }
}
here is the custom_row.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/match_result"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="@dimen/activity_margin_10dp"
        android:weightSum="3">
        <TextView
            android:id="@+id/customer_name"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginRight="10dp"
            android:text="Username"
            android:inputType="text"
            android:layout_weight="1"
            android:textColor="@color/colorBlack"
            android:textSize="@dimen/text_size_18sp" />
        <TextView
            android:id="@+id/customer_id"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginRight="10dp"
            android:text="id"
            android:inputType="text"
            android:layout_weight="2"
            android:textColor="@color/colorBlack"
            android:textSize="@dimen/text_size_18sp" />
    </LinearLayout>
    <View
        android:id="@+id/bottom_border"
        android:layout_width="match_parent"
        android:layout_height="0.8dp"
        android:layout_marginTop="@dimen/activity_margin_5dp"
        android:background="@color/colorGrey" />
</LinearLayout>
 
     
     
    