UIImage
とUIImageView
の違いは何ですか?誰かが例でそれを説明できますか?
例:
UIImage *bgImage = [UIImage imageNamed:@"[email protected]"];
UIImageView *backgroundImageView = [[UIImageView alloc] initWithImage:bgImage];
backgroundImageView.frame = [[UIScreen mainScreen] bounds];
UIImage
オブジェクトは、画像データを表示する高レベルの方法です。ファイル、Quartz画像オブジェクト、または受け取った生画像データから画像を作成できます。 UIImageクラスは、さまざまなブレンドモードと不透明度の値を使用して現在のグラフィックスコンテキストに画像を描画するためのいくつかのオプションも提供します。画像オブジェクトは不変なので、作成後にプロパティを変更することはできません。つまり、通常は初期化時に画像のプロパティを指定するか、画像のメタデータに依存してプロパティ値を提供します。ただし、場合によっては、UIImageクラスは、プロパティのカスタム値を使用する画像のコピーを取得するための便利なメソッドを提供します。
画像オブジェクトは不変であるため、基礎となる画像データへの直接アクセスも提供しません。ただし、
UIImagePNGRepresentation
関数とUIImageJPEGRepresentation
関数を使用して、画像データのPNGまたはJPEG表現を含むNSDataオブジェクトを取得できます。システムは、画像オブジェクトを使用して、サポートされているデバイスのカメラで撮影された静止画を表します。写真を撮るには、UIImagePickerControllerクラスを使用します。画像を[保存された写真]アルバムに保存するには、
UIImageWriteToSavedPhotosAlbum
関数を使用します。
UIImageView
は、単一の画像を表示するため、または一連の画像をアニメーション化するためのビューベースのコンテナーを提供します。画像をアニメーション化するために、UIImageView
クラスはアニメーションの継続時間と頻度を設定するためのコントロールを提供します。また、アニメーションを自由に開始および停止できます。新しい画像ビューオブジェクトは、デフォルトでユーザーイベントを無視するように設定されています。
UIImageView
のカスタムサブクラスでイベントを処理する場合は、オブジェクトの初期化後に、userInteractionEnabled
プロパティの値を明示的にYES
に変更する必要があります。
UIImageView
オブジェクトがその画像の1つを表示する場合、実際の動作は画像とビューのプロパティに基づいています。画像のleftCapWidth
またはtopCapHeight
プロパティのいずれかがゼロ以外の場合、画像はこれらのプロパティの値に従って拡大されます。それ以外の場合、画像は、ビューのcontentModeプロパティに従って、画像ビューで拡大縮小、サイズ調整、または配置されます。すべて同じサイズの画像を使用することをお勧めします(必須ではありません)。画像のサイズが異なる場合、そのモードに基づいて、それぞれが個別に合うように調整されます。
UIImageView
オブジェクトに関連付けられているすべての画像は、同じ縮尺を使用する必要があります。アプリケーションで異なる縮尺の画像を使用している場合、画像が正しくレンダリングされないことがあります。
つまり、次のように、画像のデータを保持するUIImage
オブジェクトのインスタンスを作成します。
NSString *sourcePath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"/picture.jpg"]; //assuming your image is in your app's bundle
UIImage *img = [[UIImage alloc]initWithContentsOfFile:sourcePath];
次に、IBまたはコードを使用してUIImageView
のインスタンスを作成し、次のように画面に画像を表示します。
[imageView1 setImage:img]; //assume you already create an instance of UIImageView named imageView1
UIImage
には画像のデータが含まれます。 UIImageView
は、UIImage
を表示するためのカスタムビューです。
UIImage
オブジェクトは画像からのデータ(つまり、PNGファイルからのデータ)を格納します
UIImageView
オブジェクトは、UIImage
を表示するために使用されます
UIImage
は、画像のバイトを保持するデータオブジェクトです。
UIImageView
は、UIImage
データを表示するコントロールです。
UIImageはデータを(画像)のように保持し、UIImageViewに表示します。
UIImageViewは、画像を表示するためのコンテナの一種です。
UIImageView *myImage = [[UIImageView alloc]init];
[myImage setImage:[UIImage imageNamed:@"1.png"]];
「myImage」としてUIImageViewのインスタンスを作成します。これはデータを表示するのに役立ちます。UIImageは、xcodeのアセットファイルから1.pngのデータを保持するのに役立ちます。
UIimageは、データ(Jpg、png ...)およびプロパティとしてUIImageを含むUIImageViewクラスを格納するオブジェクトです。 UIImageViewは複数のUIImageを持つことができ、UIImageは不変です。それはずっと前に私を悩ませました、なぜあなたがイメージを作成するときあなたがするのですか:var image:UIImageView!
しかし、あなたがその「画像」を実行すると、あなたはimage.image = UIImage.init(named: "image")を実行します