Как отобразить полноэкранное изображение, когда я щелкаю на изображении объекта Recyclerview? - PullRequest
0 голосов
/ 26 февраля 2019

Это мой ImageViewHolder, который я упомянул в классе моего адаптера

public static class ImageTypeViewHolder extends RecyclerView.ViewHolder {
    TextView imageCard_Title,imageCard_Description;
    public ImageView imageCardView;

    public ImageTypeViewHolder(View itemView) {
        super(itemView);
        imageCard_Title=itemView.findViewById(R.id.imagecard_title);
        imageCard_Description=itemView.findViewById(R.id.imagecard_description);
        imageCardView=itemView.findViewById(R.id.imagecard_picture);
    }
}

Это фрагмент кода, написанный в моем onBindViewHolder

((ImageTypeViewHolder) viewHolder).imageCard_Title.setText(modelObject.getImageCardTitle());
((ImageTypeViewHolder) viewHolder).imageCard_Description.setText(modelObject.getImageCardDescription());
((ImageTypeViewHolder) viewHolder).imageCardView.setImageResource(modelObject.getImageCardUrl());

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

Это сегмент кода в упражнении, в который я добавляю элемент imagecard:

chatList.add(new OustChatModel(1,
            "Sample Image Card",
            R.drawable.app_icon,
            "sample description"));

Я хотел бы знать, что мне нужно сделать, чтобы добавить операцию, позволяющую просматривать карточку изображенияоткрыть в полноэкранном режиме.

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 26 февраля 2019

Создайте полноэкранное изображение Фрагмент или Активность и просто используйте общий переход элемента по щелчку, чтобы получить хорошее анимированное полноэкранное изображение.Это легко сделать с помощью Android SharedElementTransitions.

Пожалуйста, прочитайте: Руководство по SharedElementTransition

0 голосов
/ 26 февраля 2019

В случае пользовательского адаптера, в котором вы заполняете свою деятельность / фрагмент несколькими держателями просмотра, вы можете использовать интерфейс для передачи данных из фрагмента в деятельность.

Я предоставил интерфейс вкласс адаптера с определенным методом:

public interface onImageClick
{ void onClickImageView(Drawable image);}

Определите объект этого интерфейса в этом классе адаптера

onImageClick mObject;

, а также объявите его в конструкторе класса адаптера:

mObject = (onImageClick) this.mCtx;

Теперь, установите OnClickListener в onBindViewHolder ()

((ImageTypeViewHolder) viewHolder).imageCardView.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        mObject.onClickImageView(((ImageTypeViewHolder) viewHolder).imageCardView.getDrawable());
                    }
                });

Напишите метод интерфейса, объявленный в действии / фрагменте, где вы получаете доступ к элементам представления Recycler:

@Override
public void onClickImageView(Drawable image) {
    //Your operation here
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...