UITableView自动高度与约束问题Xamarin.iOS

时间:2015-03-27 16:48:47

标签: ios objective-c xamarin.ios xamarin autolayout

我需要用他的contentSize的高度来调整我的UITableView的大小,我做了这个:

private void ajustHeightOfTableView()
{
            nfloat height = tableViewCores.ContentSize.Height;
            nfloat maxHeight = tableViewCores.Superview.Frame.Size.Height - tableViewCores.Frame.Y;



            if (height > maxHeight)
                height = maxHeight;

            UIView.Animate(0.25, new Action (() => {
                this.tableViewAjustHeight.Constant = height;

                this.contentView.SetNeedsUpdateConstraints();
            }));
}

public override void ViewDidAppear (bool animated)
{
            base.ViewDidAppear (animated);
            ajustHeightOfTableView();
}

我有一个带有我的UITableView的de Height约束的IBOutlet ...所以我在reloadData()之后重新调整tableview调用我的函数ajustHeightOfTableView ...

问题是:在我的UITableView下面我有另外一个带按钮和文本字段的UIView当我调整tableView的大小时,我的另一个View不起作用!她没有回应用户交互...我的问题是,在调整大小后,视图不在正确的位置。

我对UITableView和UIView之间的垂直间距有另一个约束,如下所示: IMAGE 1

这个约束是将我的视图放在正确的空间中,另一个我的uitableview调整大小......

这里是我的UITableView约束高度: IMAGE2

有人请知道我在这里做错了什么?

1 个答案:

答案 0 :(得分:1)

我不知道你是否可以单独调整高度和宽度,但我知道一种方法可以在两个方向上将网页缩放到你的视图。这是使用ScalesPageToFit完成的。

UIWebView webView = new UIWebView (new RectangleF (0, 0, cellWidth, cellHeight));
webView.ScalesPageToFit = true;
webView.ScrollView.MinimumZoomScale = 1f; 
webView.ScrollView.MaximumZoomScale = 5f; 
webView.LoadRequest (new NSUrlRequest(new NSUrl(URL)));

调整UIWebView的Frame将无效。

我希望这些简短的信息有所帮助。祝你好运!

爱和问候, 的Björn