Android-элемент с возможностью выбора оповещения с помощью CheckedTextView и изображения

Я хочу создать диалоговое окно с несколькими вариантами выбора ListView и изображением. Когда изображение нажимается ToolTip или же Toast должно появиться отображение некоторой информации относительно элемента списка. ToolTip или же Toast должен отображаться только при нажатии на изображение, а не на отмеченный элемент. Я написал конструктор диалогов для множественного выбора ListView, но как включить изображение и прослушиватель щелчка изображения?

Это мой DialogBuilder:

txtCategories.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                AlertDialog.Builder mBuilder = new AlertDialog.Builder(activity_en_register.this);
                mBuilder.setTitle(R.string.en_profile_UserCategory);
                mBuilder.setMultiChoiceItems(listItems, checkedItems, new DialogInterface.OnMultiChoiceClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int position, boolean isChecked) {

                        if(isChecked){
                            mUserItems.add(position);
                        }else{
                            mUserItems.remove((Integer.valueOf(position)));
                        }

                        Toast.makeText(getApplicationContext(),helpItems[position].toString(),Toast.LENGTH_SHORT).show();
                    }
                });

                mBuilder.setCancelable(false);
                mBuilder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int which) {
                        String item = "";
                        for (int i = 0; i < mUserItems.size(); i++) {
                            item = item + listItems[mUserItems.get(i)];
                            if (i != mUserItems.size() - 1) {
                                item = item + ", ";
                            }
                        }
                            txtCategories.setText(item);
                    }
                });

                mBuilder.setNegativeButton("Clear All", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int which) {
                        for (int i = 0; i < checkedItems.length; i++) {
                            checkedItems[i] = false;
                            mUserItems.clear();
                            txtCategories.setText("");
                        }
                    }
                });

                mBuilder.setNeutralButton("Select All",  new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int which) {
                        String item = "";
                        for(int m = 0; m < checkedItems.length; m++) {
                            checkedItems[m] = true;
                            item = item + listItems[m];

                            if (m != checkedItems.length - 1) {
                                item = item + ", ";
                            }
                        }

                        txtCategories.setText(item);
                    }
                });

                AlertDialog mDialog = mBuilder.create();
                mDialog.show();
            }
        });

0 ответов

Другие вопросы по тегам