UITableViewCell 未正确呈现

我们创建了一个 TableViewController 以便用户可以启用/禁用不同的通知类型。初始加载后,一切都很好,直到用户滚动到底部然后回到顶部并且前 1-2 个表格视图单元格未正确显示。

示例: https ://imgur.com/7n2VpTo

通常删除并重新创建视图控制器和 xib/cs 文件可以修复此问题,但想知道是否有人知道此问题的原因。

控制器代码:

    public override nfloat GetHeightForRow(UITableView tableView, NSIndexPath indexPath)

        {

             return 305;

        }


        public override nint NumberOfSections(UITableView tableView)

        {

            return 1;

        }


        public override nint RowsInSection(UITableView tableView, nint section)

        {

            return _numRows;

        }


        public override UITableViewCell GetCell(UITableView tableView, NSIndexPath indexPath)

        {

            var cell = tableView.DequeueReusableCell(Setting.Key) as Setting;

            if (cell == null)

            {

                var values = _settings.Where(s => s.Index == indexPath.Row).FirstOrDefault();


                cell = new Setting(values);


                var views = NSBundle.MainBundle.LoadNib(Setting.Key, cell, null);


                cell = Runtime.GetNSObject(views.ValueAt(0)) as Setting;


            }


            cell.SelectionStyle = UITableViewCellSelectionStyle.None;

            cell?.PopulateData(_settings.Where(s => s.Index == indexPath.Row).FirstOrDefault(), this);


            return cell;

        }



        public override void ViewWillLayoutSubviews()

        {

            base.ViewWillLayoutSubviews();

        }


30秒到达战场
浏览 76回答 1
1回答

长风秋雁

升级到 Visual Studio for Mac 8.6.5 解决了该问题。
打开App,查看更多内容
随时随地看视频慕课网APP