Roger 发表于 2023-4-21 12:23:13

AlbumView显示问题

由于官方项目SmobilerTutorials上的关于 AlbumView的Demo也不显示图片,所以找原因比较头疼。
几个问题:
ResourcePath:是只能是\bin\Debug\Resources\下的Image、Upload目录,还是可以自己指定其它目录,如果是其它目录,是填绝对路径还是相对路径?
ResourceID:到底必须是文件名?还是就是一字符串ID?
目前测试,调用Camera拍照后触发ImageCaptured,保存图片,显示在AlbumView里,图片保存是正常,但不管是改路径还是用缺省的image目录,都无法显示图片,无也报错。代码段如下:

private void MyCamera_ImageCaptured(object sender, BinaryResultArgs e)
{
    try
    {
      if (!e == null && e.isError == false)
      {
            string l_FileName = DateTime.Now().ToString("yyyyMMdd_HHmmss_fff");
            // Dim l_Path As String = Common.UploadImagePath() + "\" + Now().ToString("yyyy-MM") + "\"
            string l_Path = MobileResourceManager.DefaultImagePath;

            string l_FullFileName = l_Path + l_FileName + ".jpg";
            e.SaveFile(l_FileName, l_Path);

            AlbumViewItem l_Item;

            l_Item = new AlbumViewItem();
            l_Item.ResourceID = l_FileName;
            l_Item.ThumbResourceID = l_Item.ResourceID;
            this.AlbumView1.Items.Add(l_Item);
            //this.pnlResult_Image.Items.Refresh();
      }
    }
    catch (Exception ex)
    {
      throw new Exception(System.Reflection.MethodInfo.GetCurrentMethod().Name + "|" + ex.Message);
    }
}


Lula.Jin 发表于 2023-4-21 13:50:13

1.路径可以是其他文件夹的,路径添加参考https://www.smobiler.com/guide/resources.aspx
2.ResourceID 最好写全称,带上后缀
3. 我们这边测试是可以通过相机上传图片显示到albumview中的, 不显示就请检查路径名称是否正确
ThumbResourcePath和ResourcePath
albumview 是用panel image 和pageview 组合实现的,若是不合需求,可以自行实现
以下是我们测试demo的部分截图





Lula.Jin 发表于 2023-4-21 14:55:10

可以拼接例如 albumView1.ResourcePath = MobileResourceManager.ResourceRootPath + "\\Resources \\upload \\2023-04";

Roger 发表于 2023-4-21 14:37:40

谢谢,反馈非常及时。已测试通过。
另问一下,如果图片在子目录,该如何配置?比如图片保存在 \\upload \2023-04\\目录下,ResourcePath该如何填?

Roger 发表于 2023-4-21 15:16:26

谢谢,已解决!
页: [1]
查看完整版本: AlbumView显示问题