首页 > 解决方案 > 有没有合适的方法来改变加载到膨胀视图的图像视图的图像?

问题描述

我有一个布局,其中加载了一些按钮。每个按钮代表一个展览。单击一个展览,将创建一个带有膨胀视图的警报框,其中包含我数据库中的一些字段,包括图像的名称,然后用于使用 url 与 Picasso 一起加载该图像的名称。在那个膨胀的视图上,我有一个编辑按钮,可以让我编辑字段并将它们保存在数据库中。问题是我无法更改然后将新图像保存到我的数据库中。

我尝试使用我找到的 2 个库 https://github.com/esafirm/android-image-picker https://github.com/jrvansuita/PickImage

虽然两者似乎都让我选择图像,但图像从未加载/保存。

我也尝试将我的问题发布到上述两个,但我没有回复。我认为不需要代码,因为它只是警报框中的一个膨胀视图,带有一个图像视图和 3 个文本视图。

有人可以给我一些帮助吗?谢谢

编辑:应要求添加代码。只有 imagepicker 库代码。PickImage 尝试使用 Bitmap 或 URI 加载图像。

private void exhibitalertbox(int ii){
  //Initializes the data to be shown. setText to the 3 Textviews 
Picasso.get().load("mysite/uploads/"+exhibits[ii][4]).into(exhibitphoto);
editbtn.setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick(View v){
exhibitphoto.isClickable();
            exhibitphoto.setOnClickListener(new View.OnClickListener(){
                @Override
                public void onClick(View v){

                    ImagePicker.create(MuseumActivity.this)

                            .start();

                }
            });
}

然后下面是我尝试更改图像时使用的

  @Override
protected void onActivityResult(int requestCode, final int resultCode, Intent data) {
    if (ImagePicker.shouldHandle(requestCode, resultCode, data)) {
        // Get a list of picked images
        //List<Image> images = ImagePicker.getImages(data);
        // or get a single image only

        Image image = ImagePicker.getFirstImageOrNull(data);

        //ImageView exhibitphoto=vi.findViewById(R.id.exhibitphoto);
        Log.e("image",""+image.getPath());


        return;
    }
    super.onActivityResult(requestCode, resultCode, data);

}

截至目前,图像变量返回数据,但似乎并未将其“添加”到图像视图中。我试图“定位”图像视图并添加到它,试图从 image.getPath() 中选择图像但没有成功。. 而且我仍然必须将图像保存到数据库中。

标签: androidimageview

解决方案


推荐阅读