簡體   English   中英

轉到全圖屏

[英]Go to full image screen

我制作了一個android應用程序,將Firebase中的圖像顯示到回收器視圖中,當用戶單擊圖像時,它必須轉到其全屏頁面並嘗試了幾次,但它只顯示空白活動

您可以使用PhotoView庫(com.github.chrisbanes.photoview)顯示全屏圖片,如下所示:Piccaso用於顯示圖像,但是您可以使用其他圖像庫,例如Fresco,Glide。

ActivityLargeImageView

import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.view.View;
import android.view.Window;
import android.widget.ProgressBar;
import android.widget.Toast;
import com.github.chrisbanes.photoview.PhotoView;
import com.github.chrisbanes.photoview.PhotoViewAttacher;
import com.squareup.picasso.Callback;
import com.squareup.picasso.Picasso;
import java.io.File;
import butterknife.BindView;
import butterknife.ButterKnife;

public class ActivityLargeImageView extends FragmentActivity {

    @BindView(R.id.photoview_image)
    PhotoView photoviewImage;
    @BindView(R.id.progressbar)
    ProgressBar progressBar;


    File mFile;
    PhotoViewAttacher mAttacher;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_large_image_view);
        ButterKnife.bind(this);

        progressBar.setVisibility(View.VISIBLE);
        String img_url = getIntent().getExtras().getString("image_url");

        try {
            mFile = new File(img_url);
        } catch (Exception ex) {

        }


        if (mFile.exists()) {
            Picasso.with(getApplicationContext()).load(mFile).into(photoviewImage, imageLoadedCallback);

        } else {
            Picasso.with(getApplicationContext()).load(img_url).into(photoviewImage, imageLoadedCallback);
        }
    }

    Callback imageLoadedCallback = new Callback() {

        @Override
        public void onSuccess() {
            if (mAttacher != null) {
                mAttacher.update();
            } else {
                mAttacher = new PhotoViewAttacher(photoviewImage);
            }

            progressBar.setVisibility(View.GONE);
        }

        @Override
        public void onError() {

            Toast.makeText(getApplicationContext(), getResources().getString(R.string.error_message_connection_to_server), Toast.LENGTH_LONG).show();
        }
    };

}

XML文件

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_vertical"
    android:background="#000000"
    android:orientation="vertical" >


    <com.github.chrisbanes.photoview.PhotoView
        android:id="@+id/photoview_image"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <ProgressBar
        android:id="@+id/progressbar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center" />


</FrameLayout>

暫無
暫無

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

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