猿问

按下时如何全屏显示图像?

我正在使用SlidingSplashScreen库在图像之间滑动并在图像下方显示小点以跟踪我正在显示的图像。所以我的问题是如何在按下时全屏显示图像?我已经尝试了@Haresh Chhelana 的以下解决方案,但没有奏效:


public class MainActivity extends Activity {


ImageView imageView;


boolean isImageFitToScreen;


@Override

public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);


    imageView = (ImageView) findViewById(R.id.imageView);


    imageView.setOnClickListener(new View.OnClickListener() {

        @Override

        public void onClick(View v) {

            if(isImageFitToScreen) {

                isImageFitToScreen=false;

                imageView.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT));

                imageView.setAdjustViewBounds(true);

            }else{

                isImageFitToScreen=true;

                imageView.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT));

                imageView.setScaleType(ImageView.ScaleType.FIT_XY);

            }

        }

    });


  }

}

以下是我的代码,主要活动是:


package com.hodhod.myapplication;



import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;




import com.chabbal.slidingdotsplash.SlidingSplashView;


public class MainActivity extends AppCompatActivity {


private int[] images = {


        R.drawable.escapers,

        R.drawable.escapers2,

        R.drawable.facebook,

        R.drawable.facebook



};


@Override

protected void onCreate(final Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);


    final SlidingSplashView slidingSplashView = (SlidingSplashView) findViewById(R.id.sliding_splash_view);


    slidingSplashView.setImageResources(images);



  }


}


蝴蝶刀刀
浏览 388回答 1
1回答

宝慕林4294392

您必须在图像上添加 clickListener。像这样的事情:@Overridepublic Object instantiateItem(@NonNull ViewGroup container, int position) {  inflater = (LayoutInflater)activity.getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);  final View itemView = inflater.inflate(R.layout.viewpager_item, container,false);  final ImageView image = (ImageView)itemView.findViewById(R.id.imageView);  DisplayMetrics dis = new DisplayMetrics();  activity.getWindowManager().getDefaultDisplay().getMetrics(dis);  int height = dis.heightPixels;  int width = dis.widthPixels;  image.setMinimumHeight(height);  image.setMinimumWidth(width);  itemView.setOnClickListener(new OnClickListener(){    public void onClick(View v){        // here you can show the image in fullscreen        // First method : use an hidden fullscreen Layout (like the first piece of code you've posted)        // Second method : use an Activity    }  try {    Picasso.with(activity.getApplicationContext())            .load(images[position])            .placeholder(R.mipmap.ic_launcher)            .error(R.mipmap.ic_launcher)            .into(image);  }  catch (Exception ex){  }  container.addView(itemView);  return itemView;}
随时随地看视频慕课网APP

相关分类

Python
我要回答