Я создаю пользовательский uicontrol для IOS (xamarin.iOS). Uicontrol состоит из текстового поля и кнопки. Я создание пользовательского элемента управления путем расширения UIViewАвтоматические ограничения компоновки для динамического представления
Coplexity
Ширин текстового поля будет дан пользователем и должен быть отображено во время выполнения.
Сценарий: пользователю будет предоставлена форма в приложении, где они могут ввести ширину элемента управления, например, если пользователь ввел 50 и нажал кнопку отправки, когда пользовательский интерфейс UIcontrol отображается на следующей странице, он должен занимает всего 50% от общей ширины экрана.
Выпуск
Мне нужно применять ограничение Автокомпоновки для текстового поля. и я добавил ограничения, только верхние и левые ограничения работают, как ожидалось. Когда я повернуть устройство правое поле не меняется пропорционально
this.AddConstraint (
NSLayoutConstraint.Create(textField,NSLayoutAttribute.Left,NSLayoutRelation.Equal,this, NSLayoutAttribute.Left, 1 , 10)
);
this.AddConstraint (
NSLayoutConstraint.Create(textField,NSLayoutAttribute.Right,NSLayoutRelation.Equal,this, NSLayoutAttribute.Left, 1 , ((UIScreen.MainScreen.Bounds.Width * editTextWidth)/100)+10)
);
this.AddConstraint (
NSLayoutConstraint.Create(textField, NSLayoutAttribute.Top, NSLayoutRelation.Equal,label, NSLayoutAttribute.Top, 1, 30+10)
);
this.AddConstraint (
NSLayoutConstraint.Create(textField, NSLayoutAttribute.Height, NSLayoutRelation.Equal, null, NSLayoutAttribute.NoAttribute, 0, 3 * 10)
);