Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android Studio和Firebase:全屏显示ImageView_Java_Android_Firebase_Firebase Realtime Database_Android Imageview - Fatal编程技术网

Java Android Studio和Firebase:全屏显示ImageView

Java Android Studio和Firebase:全屏显示ImageView,java,android,firebase,firebase-realtime-database,android-imageview,Java,Android,Firebase,Firebase Realtime Database,Android Imageview,我有一个屏幕,显示我的电影名称和他们的照片,这些都在我的Firebase中。它显示了 我的数据库的结构是这样的。name是字符串,它是我的电影的名称。profilePic是包含Firebase存储中图片链接的字符串 我想要的是,当我点击列出的任何图片时,我想在另一个更大的活动上显示它,比如打开某人的WhatsApp或Facebook个人资料图片 这些是我的课程,效果非常好。我该怎么做 Movies.java activity_movies.xml cardview.xml 您可以使用此库实现放大

我有一个屏幕,显示我的电影名称和他们的照片,这些都在我的Firebase中。它显示了

我的数据库的结构是这样的。name是字符串,它是我的电影的名称。profilePic是包含Firebase存储中图片链接的字符串

我想要的是,当我点击列出的任何图片时,我想在另一个更大的活动上显示它,比如打开某人的WhatsApp或Facebook个人资料图片

这些是我的课程,效果非常好。我该怎么做

Movies.java

activity_movies.xml

cardview.xml


您可以使用此库实现放大和缩小功能,如链接

您需要在项目中添加此渐变

实现'com.otaliastudios:zoomlayout:1.6.1'

检查下面的示例布局

<?xml version="1.0" encoding="utf-8"?>
调整位图大小:

使用视图作为修改视图保持架

class MyViewHolder extends RecyclerView.ViewHolder
{
        TextView name;
        ImageView profilePic;
        View mView;
        public MyViewHolder(@NonNull View itemView) 
    {
            super(itemView);
            mView = itemView;
            name = (TextView) itemView.findViewById(R.id.film_name);
            profilePic = (ImageView) itemView.findViewById(R.id.filmProfile);
        }
    }
在适配器中实现视图持有者的单击侦听器,然后使用图像url启动活动

@Override
public void onBindViewHolder(@NonNull MyViewHolder myViewHolder, int i) {
    myViewHolder.name.setText(profiles.get(i).getName());
    Picasso.get().load(profiles.get(i).getProfilePic()).into(myViewHolder.profilePic);  
    mViewHolder.mView.setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick(View v) {
            startImageActivity(profiles.get(i).getProfilePic());
        }
    });
}
3.创建活动并从所需维度的图像视图开始

    void startImageActivity(String imgUrl)
    {
    Intent intent = new Intent(context,ViewImage.class);
    intent.putExtra("profilePic",imgUrl);
    context.startActivity(intent);
    }
或者要在外部应用程序中打开映像,请尝试

    void startImageActivity(String imgUrl)
    {
   Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(imgUrl));             
   context.startActivity(intent);
    }

在listView中实现McClickListener。@Wicaledon请检查以下解决方案,并在出现问题时通知我concern@RavindraKushwaha我正在努力适应我的课程,我会做反馈OK@Wicaledon,@RavindraKushwaha你能帮我适应吗?因为有一些缺少的类,比如ActivityZoomBinding,我只是不理解第三部分。我总是用这些行进行另一项活动Intent I=newintentmenu.this,Social.class;i、 putextra_消息,消息;startActivityForResulti,1;覆盖transitionr.anim.slide\u in\u right,R.anim.slide\u out\u left;在我的每项活动中,除了这个,它不允许更新第三部分以更好地理解。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/dark_grey"
    android:orientation="vertical"
    android:weightSum="13">


    <ImageView
        android:id="@+id/iv_cancel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:layout_margin="@dimen/margin_small"
        android:padding="@dimen/margin_small"
        android:src="@drawable/ic_skip" />


    <View
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="6" />

    <com.otaliastudios.zoom.ZoomImageView
        android:id="@+id/zoom_image"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="2"
        android:scrollbars="vertical|horizontal"
        app:alignment="center"
        app:animationDuration="280"
        app:flingEnabled="true"
        app:horizontalPanEnabled="true"
        app:maxZoom="2.5"
        app:maxZoomType="zoom"
        app:minZoom="0.7"
        app:minZoomType="zoom"
        app:overPinchable="true"
        app:overScrollHorizontal="true"
        app:overScrollVertical="true"
        app:transformation="centerInside"
        app:transformationGravity="auto"
        app:verticalPanEnabled="true"
        app:zoomEnabled="true" />

    <View
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="5" />
</LinearLayout>
 GlideApp.with(this)
                    .asBitmap()
                    .load(YOUR_IMAGE_URL)
                    .into(new SimpleTarget<Bitmap>() {
                        @Override
                        public void onResourceReady(Bitmap resource, Transition<? super Bitmap> transition) {
                            YOUR_IMAGEVIEW.setImageBitmap(resource);
                        }
                    });
 public class ZoomActivity extends AppCompatActivity {


    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        this.requestWindowFeature(Window.FEATURE_NO_TITLE);
        this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

        setContentView(R.layout.activity_zoom);

      //  ActivityZoomBinding mBinding = DataBindingUtil.setContentView(this, R.layout.activity_zoom);


        ImageView zoomImage = findViewById(R.id.zoom_image);


        ///GETTING INTENT DATA
        Intent intent = getIntent();
        if (intent.hasExtra("ZOOM_IMAGE")) {

            String imageUrl = intent.getStringExtra("ZOOM_IMAGE");

            GlideApp.with(this)
                    .asBitmap()
                    .load(imageUrl)
                    .into(new SimpleTarget<Bitmap>() {
                        @Override
                        public void onResourceReady(Bitmap resource, Transition<? super Bitmap> transition) {
                            zoomImage.setImageBitmap(resource);
                        }
                    });


        }


    }


}
Bitmap resizedBitmap = Bitmap.createScaledBitmap(
    originalBitmap, newWidth, newHeight, false);
class MyViewHolder extends RecyclerView.ViewHolder
{
        TextView name;
        ImageView profilePic;
        View mView;
        public MyViewHolder(@NonNull View itemView) 
    {
            super(itemView);
            mView = itemView;
            name = (TextView) itemView.findViewById(R.id.film_name);
            profilePic = (ImageView) itemView.findViewById(R.id.filmProfile);
        }
    }
@Override
public void onBindViewHolder(@NonNull MyViewHolder myViewHolder, int i) {
    myViewHolder.name.setText(profiles.get(i).getName());
    Picasso.get().load(profiles.get(i).getProfilePic()).into(myViewHolder.profilePic);  
    mViewHolder.mView.setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick(View v) {
            startImageActivity(profiles.get(i).getProfilePic());
        }
    });
}
    void startImageActivity(String imgUrl)
    {
    Intent intent = new Intent(context,ViewImage.class);
    intent.putExtra("profilePic",imgUrl);
    context.startActivity(intent);
    }
    void startImageActivity(String imgUrl)
    {
   Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(imgUrl));             
   context.startActivity(intent);
    }