更新 - 带故事板的MvvmCross iOS - 未显示TableViewCell

时间:2015-01-30 19:04:48

标签: ios xamarin storyboard mvvmcross

我正在尝试显示一个表视图,其表视图单元格中有一个标签。我跟着MvvmCross N + 1天,N = 3来创建这个样本。

正在显示该表,但标签未显示

我有一个MvxTableViewController

partial class View : MvxTableViewController
{
    public View (IntPtr handle) : base (handle)
    {
    }

    public override void ViewDidLoad ()
    {
        base.ViewDidLoad ();

        var source = new MvxSimpleTableViewSource (TableView, typeof(CellView), "CellView");
        TableView.Source = source;
        var set = this.CreateBindingSet<View,ViewModel> ();
        set.Bind (source).To (vm => vm.CellViewModels);
        set.Bind (source).For (s => s.SelectionChangedCommand).To (vm => vm.ViewCommand);
        set.Apply ();

        TableView.ReloadData ();
    }
}

以及带有标签的MvxTableViewCell

partial class CellView : MvxTableViewCell
{
    public CellView (IntPtr handle) : base (handle)
    {
        this.DelayBind (() => {
            var set = this.CreateBindingSet<CellView, CellViewModel>();
            set.Bind(cellLabel).To(vm => vm.TextToDisplay);
            set.Apply();
        });
    }
}

正如我所说,显示了表视图,但标签未显示在单元格中。我可以单击表视图并通过绑定到我的视图模型上的命令导航到另一个视图。

在日志中我收到以下警告

MvxBind:Warning: 13.35 Failed to create target binding for binding Text for TextToDisplay

我不明白这一点,因为绑定代码看起来不错!

代码与N + 1 N = 3视频有一点不同之处在于我使用以下代码构建视图源,因为我没有nib / xib

var source = new MvxSimpleTableViewSource (TableView, typeof(CellView), "CellView");

其中&#34; CellView&#34;是在原型单元格的属性中输入的标识符

这可能是问题所在。我还应该说我在Mac上使用Xamarin Studio。

请帮助我几个小时以来一直在抨击我。

更新 - 由于快速接近截止日期,我不得不放弃使用Storyboard。已恢复为视图和单元格使用xib。如果有人解决了这个问题,请发表您的回答

0 个答案:

没有答案