Пользовательский диалог не появляется Использование фрагмента - PullRequest
0 голосов
/ 24 декабря 2018

Я создал настраиваемое диалоговое окно и хочу отобразить его фрагмент, щелкнув по элементу recyclerview.И мой код диалога создан в адаптере

Вот мой код в адаптере, который я создал для отображения диалога

@Override
public void onBindViewHolder(final RecyclerViewHolder viewHolder, final int i) {

    foodListDetail ft = foodList.get(i);
    viewHolder.tvFood.setText(ft.getFood());
    viewHolder.tvCost.setText(String.valueOf(ft.getCost())+" บาท");
    viewHolder.tvunit.setText(ft.getUnit());
    Picasso.get()
            .load(ft.getUrl())
            .placeholder(R.drawable.ic_android_black_24dp)
            .error(R.drawable.ic_error_black_24dp)
            .into(viewHolder.img);
    viewHolder.cd.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            final Dialog myDialog = new Dialog(ctx);
                myDialog.setContentView(R.layout.popup1);
                ImageView img = myDialog.findViewById(R.id.imageView);
                final TextView tvName = (TextView)myDialog.findViewById(R.id.foodName);
                final TextView tvCost = (TextView)myDialog.findViewById(R.id.cost);
                TextView tvClose = (TextView)myDialog.findViewById(R.id.tvClose);
                TextView tvNum = (TextView)myDialog.findViewById(R.id.num);
                ImageView up = myDialog.findViewById(R.id.up);
                ImageView down = myDialog.findViewById(R.id.down);
                myDialog.show();
        }
    });

}

Вот контекст и FragmentManager, которые я получил из фрагмента

public adt_restaurant(Context ctx, ArrayList<foodListDetail> details,FragmentManager fmGetmanager){
    this.ctx=ctx;
    this.foodList = details;
    this.fm=fmGetmanager;
}

Вот фрагмент фрагмента RecyclerView rv = v.findViewById (R.id.rv);rv.setHasFixedSize (true);

            RecyclerView.LayoutManager lm = new LinearLayoutManager(ctx);
            rv.setLayoutManager(lm);

            RecyclerViewMargin decoration = new RecyclerViewMargin(5, 1);
            rv.addItemDecoration(decoration);

            adt_restaurant adt = new adt_restaurant(getContext(),details,getFragmentManager());
            rv.setAdapter(adt);

Проблема в том, что мое диалоговое окно не отображается, и при нажатии на элемент не получено никакой ошибки при нажатии на элемент, мой экран становится серым, как диалоговое окно, но отображаетсяне появился

...