Question: ```
return Math.Ceiling((_BytesReceived / _TotalBytesToReceive) * 100);

```

\_BytesReceived is int and also \_TotalBytesToReceive is int.

The error is: 

> 
> Severity Code Description Project File Line Suppression State
>  Error CS0121 The call is ambiguous between the following methods or properties: 'Math.Ceiling(decimal)' and 'Math.Ceiling(double)' DownloadMultipleFiles
> 
> 
> 

The full function:

```
public int ProgressPercentage
    {
        get
        {
            if (_TotalBytesToReceive > 0)
            {
                return Convert.ToInt32(Math.Ceiling((_BytesReceived / (double)_TotalBytesToReceive) * 100d));
            }
            else
            {
                return -1;
            }
        }
    }

```

Answer: 
You don't need to restrict top and bottom constraint. The UILabel will auto adjust the contentHeight. You can refer to `contentHuggingPriorityForAxis:` and `contentCompressionResistancePriorityForAxis:`. You can fix the center of label rather than the bottom and top.
Found one possible solution: [solution](https://stackoverflow.com/questions/13149733/ios-autolayout-issue-with-uilabels-in-a-resizing-parent-view)

Turns out `UILabel`'s `numberOfLines` property and Auto Layout don't play along nicely.