Xamarin.Forms Listview行高不适应iOS

时间:2016-09-19 21:17:10

标签: xamarin.forms

我使用下面的代码作为listview中的自定义单元格。我试图使用ForceUpdateSize(),以便在绑定属性发生更改时更新列表视图的单元格。列表视图的属性为HasUnevenRows =“True”。但是,当我在iOS中将name属性更改为运行时的长字符串(通过使用按钮)时,该行不会展开。但是当字符串在应用程序的开头很长时,该行有足够的空间来显示整个字符串。在Android中,即使没有ForceUpdateSize()调用,它似乎也能正常工作。应该怎么做才能更新行的高度以适应iOS中不断变化的内容?

public class CustomCell : ViewCell
{
    public CustomCell()
    {
        Label age = new Label();
        Label name = new Label();
        StackLayout cellWrapper = new StackLayout();

        age.SetBinding(Label.TextProperty, "Age");
        name.SetBinding(Label.TextProperty, "Name");

        age.PropertyChanged += UpdateCell;
        name.PropertyChanged += UpdateCell;

        cellWrapper.Children.Add(age);
        cellWrapper.Children.Add(name);

        View = cellWrapper;
    }


    void UpdateCell(object sender, EventArgs e)
    {
        ForceUpdateSize();
    }

}

0 个答案:

没有答案