2015-08-16 2 views
1

У меня есть вид с именем myView, который всегда находится на половине экрана и сидит в верхней части экрана.Как изменить размер фиксированной ширины и высоты UIImageView с автоматическим расположением

В этом представлении я добавил UIImageView с размером 120x120, который находится в центре myView (по горизонтали и вертикали). Внутри IB, чтобы удовлетворить ограничениям (X & Y) Мне всегда нужно установить фиксированную ширину и высоту для моего изображения, после того как я установил центр по горизонтали и по центру по вертикали.

Но при фиксированной высоте и ширине изображение не изменяется при изменении размера экрана. Я хочу, чтобы мое изображение изменялось при работе на iPhone5 или iPhone 4, потому что myView изменит размер. Мне нужно что-то вроде изображения, которое должно зависеть от размера myView.

Как на самом деле добиться этого?

+0

вы пробовали настройки contentMode из ImageView? imageView.contetnMode = UIVIewContentModeAspectFill; –

+0

Да, но я думаю, потому что высота и ширина фиксированы, это ничего не изменит. – Kobe

+0

u может сделать это с помощью автоматической компоновки ... но может быть немного беспорядочно ... Просто вы можете установить выход фиксированного ограничения по высоте и ширине, а затем установить его программно ... в функции viewWillAppear(). –

ответ

1

набор imageView.clipToBounds = yes, а также множество imageView.contentMode = UIViewContentModeScaleAspectFit;

Update Вы говорите о ImageView не образ, в этом случае он не будет изменять размеры из-за постоянной ширины и высоты, сделать одну вещь, создать IBOutlet скованности и при необходимости измените значения, или вы также можете установить соотношение сторон с супервизом

+0

Он не изменяет размер, я думаю, это из-за фиксированной ширины и высоты. – Kobe

+0

Хорошо, если вы занимаетесь с ImageView, а не с изображением, тогда оно не будет изменяться. –

+0

Хорошо, если я выберу аспектный рацион с помощью супервизора, он даст мне соотношение 2: 5. Но мне все же нужно придать ему больше ограничений для изображения. Для меня, ведущий/пробный/нижний/верх, кажется, не работает. Он всегда спрашивает меня об ограничении X и Y. Любая идея, какие еще ограничения я могу предоставить для изображения? – Kobe

0

Если вы установили изображение с фиксированной шириной и высотой, оно не изменится соответственно. Вы можете установить его по отношению к myView, или вместо этого вы можете установить ведущий и конечный размер из всех для ребер и удалить ограничения по центру.

+0

Как я могу установить его относительно myView? – Kobe

+0

Вам нужно играть со сдерживаниями, на это нужно много времени. вы также можете установить фиксированное конечное и ведущее пространство, чтобы создать аналогичный результат. –

0

Ваши ограничения должны выглядеть следующим образом:

enter image description here

+0

Если я это сделаю, он скажет, например, ведущий и конечный = 240, из-за свободной формы раскадровки, которая намного больше экрана. И затем при запуске мой образ изображения исчезает с экрана. – Kobe

+0

Извините, я не могу понять ваш макет, может быть, вы можете приложить скриншот? @Adrian – orkenstein

+0

Это именно ваш макет на скриншоте., Но вид изображения намного меньше и находится в центре представления. Размер раскадровки - Inferred. Это намного шире, чем размер экрана при работе в симуляции. – Kobe

Смежные вопросы