2017-01-23 94 views
0

我有一個UIView,其中有4個部件,的UITextField,一個UIActivityIndi​​cator和2 UIButtons。所有組件都使用使用故事板設置的約束。迅速更新約束編程

Button1的的UITextField UIActivityIndi​​cator Button2的

的UITextField顯示一個的UIWebView的URL和UIActivityIndi​​cator對應於頁面加載。

當頁面已加載時,UIActivityIndi​​cator被隱藏。

我想那是什麼加載完成,當UIActivityIndi​​cator是隱藏的的UITextField增加的大小,並使用了由UIActivityIndi​​cator使用的空間。

Button1的的UITextField Button2的

回答

1

這裏是我會做:

而不是將文本字段和活動的指標之間的約束,使用文本字段之間的約束,這是上海華盈,添加了額外的填充爲活動指標騰出空間。

控制 - 從約束拖動到您的視圖控制器以創建它的出口。

在您的代碼中,當您隱藏活動指示符時,通過活動指示符的寬度加上活動指示符和文本字段之間的間距來減少約束上的常量設置,以便文本字段變寬以填充通過隱藏活動指示器釋放空間。

如果要讓文本字段爲其增長設置動畫效果,請在改變約束設置的代碼之後緊接着撥打電話以調用UIView.animate(duration:animations:)。這將導致佈局更改變得生動。

+0

工作就像一個魅力! –

+0

需要一點時間來考慮通過將網點連接到約束來更改佈局,但這是使用自動佈局的常用方法。 –