首页 > 解决方案 > Intent 中的网格视图位置没有增加

问题描述

我正在设置网格视图库并在 Intent id 中,我需要增加 int 位置以显示画廊中的下一张照片但不增加这是代码:

公共类 FullScreenActivity 扩展 AppCompatActivity {

private ImageView imageView;
private ImageButton BtnNext, BtnBefore, BtnShare, BtnDownload;
private int position;
private ImageAdapter imageAdapter;

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

    imageView = (ImageView) findViewById(R.id.image_view_screen);
    BtnNext = (ImageButton) findViewById(R.id.imgBtnNext);
    BtnBefore = (ImageButton) findViewById(R.id.imgBtnBefore);
    BtnShare = (ImageButton) findViewById(R.id.imgBtnShare);
    BtnDownload = (ImageButton) findViewById(R.id.imgBtnDownload);

    Intent intent = getIntent();
    position = intent.getExtras().getInt("id");
    imageAdapter = new ImageAdapter(this);
    imageView.setImageResource(imageAdapter.ImagesArray[position]);


    BtnNext.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            imageView.setImageResource(imageAdapter.ImagesArray[position + 1]);
            Toast.makeText(FullScreenActivity.this, "position: " + position, Toast.LENGTH_SHORT).show();
        }
    });

    BtnBefore.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

        }
    });

    BtnShare.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

        }
    });

    BtnDownload.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

        }
    });
}

}

标签: javaandroid

解决方案


您不只是编写代码位置 + 1 来跟踪位置值,您的实际代码应该是这样的:

BtnNext.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            position = position + 1;
            imageView.setImageResource(imageAdapter.ImagesArray[position]);
            Toast.makeText(FullScreenActivity.this, "position: " + position, Toast.LENGTH_SHORT).show();
        }
    }); //note you should also write the code to check if the position exceeds the final value

推荐阅读