просмотр полноэкранного изображения, когда элемент из переработчика щелкает - PullRequest
0 голосов
/ 02 мая 2018

Я новичок в android. У меня есть RecyclerView, который показывает список изображений из json. Я хочу сделать показ изображения в полноэкранном режиме, когда элемент из RecyclerView щелкает. Также он должен иметь возможность увеличивать и уменьшать масштаб (например, галерея ). Функциональность масштабирования выполняется с помощью библиотеки Photoview. Но просмотр в полноэкранном режиме не выполняется. Код класса адаптера прилагается ниже. Пожалуйста, помогите мне сделать это.

 @Override
 public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
    final MyHolder myHolder = (MyHolder) holder;
    DataFish current = data.get(position);

    // load image into imageview using glide
    Glide.with(context).load(current.flagimage)
            .placeholder(R.drawable.ic_launcher_background)
            .error(R.drawable.ic_launcher_background)
            .into(myHolder.imageView);
    myHolder.imageView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

        }
    });


}

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

1 Ответ

0 голосов
/ 02 мая 2018

выполните следующие действия

создайте новую активность, подобную этой, и получите URL-адрес

ПЛАНИРОВКА

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <ImageView
        android:id="@+id/myImage"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:adjustViewBounds="true"
        android:scaleType="fitXY" />

</LinearLayout>

Activity.java

public class MainActivity extends AppCompatActivity {


    ImageView myImage;
    String url = "";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        url = getIntent().getStringExtra("image_url");

        myImage = findViewById(R.id.myImage);
        Glide.with(this).load(url)
                .placeholder(R.drawable.ic_launcher_background)
                .error(R.drawable.ic_launcher_background)
                .into(myImage);
    }


}

При использовании щелкните ом элемент повторного просмотра, а затем передайте URL-адрес этой операции с помощью намерения

 myHolder.imageView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent= new Intent(context,MainActivity.this);
            intent.putExtra("image_url",current.flagimage);
            context.startActivity(intent);
        }
    });

Вы можете использовать PhotoView для увеличения ImageView

PhotoView призван помочь в создании удобной в использовании реализации масштабирования Android ImageView.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...