Mam to UIImageView
i mam wartości jego maksymalnej wysokości i maksymalnej szerokości. Chcę uzyskać obraz (z dowolnym współczynnikiem kształtu i dowolną rozdzielczością) i chcę, aby pasował do obramowań, więc zdjęcie nie przekracza, ale może je skurczyć tak, jak chce . (Zaznaczone na czerwono na zdjęciu):Zmień rozmiar UIImage i zmień rozmiar UIImageView
Teraz obraz pasuje niezbędnej wielkości poprawnie, ale mam 2 zmartwień: 1. UIImageView
nie jest równa wielkości obraz o zmienionym rozmiarze, pozostawiając czerwone tło (i tego nie chcę) 2. Jeśli obraz jest mniejszy niż wysokość mojego UIImageView
, jego rozmiar nie jest zmniejszany, pozostaje na tej samej wysokości.
Oto mój kod i wiem, że jej źle:
UIImage *actualImage = [attachmentsArray lastObject];
UIImageView *attachmentImageNew = [[UIImageView alloc] initWithFrame:CGRectMake(5.5, 6.5, 245, 134)];
attachmentImageNew.image = actualImage;
attachmentImageNew.backgroundColor = [UIColor redColor];
attachmentImageNew.contentMode = UIViewContentModeScaleAspectFit;
Więc jak mam się dynamicznie zmieniać wielkość nie tylko z UIImageView.image
, ale całego UIImageView
, dzięki czemu jego rozmiar całkowicie regulowany do jego treści. Każda pomoc będzie bardzo ceniona, dzięki!
, jeśli po superview nie dodaję "!" daje mi błąd "wartość opcjonalnego typu" UIView? " nieopakowany "jest poprawiony, jeśli używam"! " : imageView.center = imageView.superview! .center; – Alex
Co zrobić, jeśli używasz automatycznego układu? Czy nie powinieneś ustawiać "ramki"? –