-1

のビューがありUIImageViewます。サーバーから幅 300 ピクセル、高さ 100 ピクセルの画像を取得しています。ただし、画像をに挿入するとUIImageView、画像は画像ビューのサイズに引き伸ばされます。

コードviewDidLoad:

id path = @"URL TO IMAGE";
NSURL *url = [NSURL URLWithString:path];
NSData *data = [NSData dataWithContentsOfURL:url];
UIImage *img = [[UIImage alloc] initWithData:data];

CGRect frame = [imageView frame];
frame.size.width = 300;
frame.size.height = 100;
[imageView setFrame:frame];

self.imageView.image = img;

ただし、UIImageViewサイズは上記のコードの 6 行目と 7 行目の値に変更されていません。

私はObjective-Cを初めて使用します。

.h:

#import <UIKit/UIKit.h>

@interface detailViewController : UIViewController
@property (strong, nonatomic) IBOutlet UIImageView *imageView;
4

1 に答える 1

3

UIImageView を設定する必要がありますcontentModecontentMode使用できるさまざまな値を確認するには、UIView のドキュメントを参照してください。たとえばUIViewContentModeScaleToFill、UIImageView のサイズに正確に一致するように画像を引き伸ばします。UIViewContentModeCenter画像のサイズをまったく変更しません。等々。

編集: UIImageView 自体に関しては、参照がすべて同じ UIImageView を正しく指していること、およびこれがペン先からのものと同じ UIImageView であることを確認する必要があります。また、オートレイアウトがペン先でオンになっている場合setFrame:、フレームは制約によって決定されるため、効果はありません。

于 2013-04-24T21:37:40.597 に答える