簡體   English   中英

單擊回收站視圖中的項目時查看全屏圖像

[英]view full screen image when item from recycler view clicks

我是 android 新手。我有一個 RecyclerView,它顯示來自 json 的圖像列表。我想在 RecyclerView 中的項目點擊時全屏顯示圖像。此外,它應該能夠放大和縮小。(如畫廊)。縮放功能是使用 Photoview Library 完成的。但是沒有完成查看全屏項目。適配器類代碼附在下面。請任何人幫助我做到這一點。

 @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) {

        }
    });


}

我想在這個onclick中添加查看全屏的代碼。

按照這個步驟

像這樣創建一個新的 Activity 並檢索 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>

活動.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);
    }


}

當使用 click om recyclerview 項目而不是使用意圖將 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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM