[iPhone] UIView の基本 (Objective-C)

UIViewクラスは、画面上の矩形領域と領域内のコンテンツを管理するクラスです。領域内のコンテンツの描画を処理し、またコンテンツとのインターフェースを処理します。

uiview

Objective-C
Xcode 9.4

UIView

UIView はGUIを作る上で基本的なもので、以下ような処理を管理しています。

  1. 描画とアニメーション
  2. レイアウトとサブビューの管理
  3. イベントのハンドリング

インスタンス生成

矩形領域を指定してインスタンス生成。例として、x,yの始点が0で横幅が100、縦幅が200の矩形は以下のような設定です。


インスタンスの生成してから矩形領域を設定する場合はframeを使います。

メソッド

主なメソッドは

  • – (void)addSubview: (UIView *)view
    • サブビューを追加
  • – (void)drawRect: (CGRect)rect
    • 図形を描画
  • – (void)sizeToFit
    • コンテンツが入るようにUIViewをリサイズ、移動する

プロパティ

frame ビューの位置とサイズを表すフレーム矩形
center 中心位置を指定
backgroundColor 背景色を指定
hidden 表示、非表示を指定
bounds 独自の座標系でビューの位置とサイズを表す境界の矩形
frame はsuperviewからみた矩形サイズで
bounds はそれ自身のサイズで回転されても変わらない

 

サンプルコード

UIViewのインスタンスを生成して背景色を変え
その中にUIImageViewを置いてみます。

ViewController.m


実行してViewが表示されているのを確認してください。

uiview

画像をtestViewの上に追加するのですが、位置調整は当然ですがtestViewの位置に合わせないとおかしくなります。どうぜ画面の中央ということでscreenWidth/2, screenHeight/2で設定するとずれてしまいます。



Ref:
UIView — UIKit | Apple Developer Documentation