如何动态地将Image添加到ImageView?

时间:2016-07-26 09:15:23

标签: android android-imageview

我正在做一个用户可以添加最多10张图片的项目。当用户点击"添加新图片"按钮将创建一个imageview。我已经在水平滚动图像视图中实现了这一点,因此用户可以水平滚动以查看图像。在点击图像时,用户将能够从相机或图库添加图像。现在问题始终是即使我点击其他图像视图,图像也会在最后一个图像视图上设置。我不知道如何在所选的图像视图中设置图像。

我已经引用此(http://sunil-android.blogspot.in/2013/03/insert-imageview-dynamically-using-java.html)链接在水平滚动视图中动态创建imageview。

以下是我的代码:

点击按钮后,图像视图将动态添加:

s = subplot(1,5,r);
if any(imDATA(r,1,1))
errorbar(imDATA(r,19:26,1), imDATA(r,3:10,1), imDATA(r,27:34,1),'-'k','MarkerSize',e,'LineWidth',w)
hold on;

});

这是addImageView函数:

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

                addImageView(image_layout);
        }

这是从相机或图库中选择图像的代码:

  private void addImageView(LinearLayout layout) {

    imageView = new ImageView(this);
    imageView.setImageResource(R.drawable.gallery);
    LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(220, 220);
    imageView.setLayoutParams(layoutParams);
    imageView.setPadding(0, 0, 10, 0);
    imageView.setScaleType(ImageView.ScaleType.FIT_XY);
    imageView.setId(temp);
    layout.addView(imageView);

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

            iv_id = v.getId();

            showDialog(CONTEXT_MENU_ID);  
        }
    });
}

1 个答案:

答案 0 :(得分:1)

取一个类变量ImageView 喜欢

ImageView addImage;

像这样更改点击方法

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

        iv_id = v.getId();

        addImage = (ImageView)v  // added code 

        showDialog(CONTEXT_MENU_ID);  
    }
});

最后在onActivityResult替换此行

imageView.setImageBitmap(SelectedImage); //setting the image

addImage.setImageBitmap(SelectedImage); //setting the image

希望你能理解这个问题。

相关问题