MvxHttpImageView绑定未更新

时间:2012-12-09 16:36:26

标签: c# xamarin.android mvvmcross

我有以下代码

<Mvx.MvxHttpImageView xmlns:local="http://schemas.android.com/apk/res/TestServices.Droid" android:layout_width="wrap_content" android:layout_height="wrap_content" local:MvxBind="{'ImageUrl':{'Path':'ThumbNail'}}"

我将图片网址传递给ThumbNail属性的位置。上面的代码是ItemTemplate的一部分,它正在传递一个TestModel对象的ObservableCollection,如下所示。

public class TestModel
{
   public string ThumbNail
   {
     get; 
     set;
   }
   public string Name
   {
     get; 
     set;
   }   

   ....
}

Name属性也在上面的模板中绑定到TextView,它和其他字符串值一样正确显示。唯一的问题是图像没有显示出来。 我已经尝试在ViewModel的构造函数中预先设置Image Url,然后它可以正常工作。但是当我在Web服务的Completed事件中将未提取的值添加到集合时,即不显示Image时。我已经在已完成的事件中验证了图像网址的路径,这是正确的。这里可能出现什么问题。非常感谢

2 个答案:

答案 0 :(得分:2)

我不确定出了什么问题......

但是要考虑尝试的一些事情是:

  • 将MvxBindingTrace级别设置为Diagnostic - 输出面板是否会告诉您任何有趣的内容?

  • 如果您要动态更新网址,那么您是否需要触发属性更改事件

  • 如果您添加一个文本视图,其Text绑定到图片网址,那么这次更新是否正确?

  • 使用wrap_content高度和宽度真的有意义吗?如果您将高度和宽度修改为100dp会发生什么?

  • 如果您使用已知的良好图片网址,该应用是否有用 - 例如来自http://placekitten.com的网址?

  • 如果您将默认图像设置为在加载http图像时显示的本地文件(例如资源或资源),该应用程序是否有效?

  • 示例应用程序是否适合您 - 例如畅销书或推特样本?如果是这样,那么你能看到他们做的不同吗?

  • 你可以进入mvx http镜像源 - 是否正在调用属性和方法?如果它们是,那么它们看起来像是以任何方式被正确或奇怪地调用了吗?

尝试这些建议,我怀疑你会找到前进的方法。祝你好好调试。

如果这些建议无效,请尝试添加更多信息,包括您使用的mvvmcross版本,Android版本,手机或模拟器等信息。

答案 1 :(得分:0)

知道了,我使用反斜杠通过连接字符串来创建url,将它们更改为正斜杠将其转换为正确的链接,并且它现在正常工作。非常感谢Stuart的帮助