23日目-21.06.30


学習キーワード

  • review(復習)
  • Project 1 ~ 3
  • 1. What you learned


    使用済みUI要素
  • UITableView
  • UIImageView画像をサイズと位置に調整
  • UIImageは、画素を含む.
  • Retina HD画面使用@2x@3xファイル名
  • UIButton:オプションカード応答、行動を支援します.
  • UIViewController:1つの画面を表示するために必要なすべての基本的な表示技術を提供します.
  • UIAlertViewController:警告を表示するビューコントローラ(ユーザがコンテンツを表示または選択する必要がある場合に便利)
  • UIBarButtonItem:ラベルバーまたはツールバーで使用されるボタン
  • UIColor
  • UIActivityViewController:コンテンツ共有、印刷、画像記憶を処理可能なクラス
  • Bundle:プロジェクトで構築した資産を使用できます.
  • FileManager:ファイルシステムを読み取りまたは書き込みできます.
  • random(in:):整数を生成する方法
  • UIViewとCALayerの違い、UICOLORとCGCOLORの違い
    UIViewをアドバンスドと見なし、CaLayerをLowと見なした場合、UIViewと同じアドバンスドは、CaLayerなどのLowアプリケーション上に構築されます.CGColor:コアグラフィックスフレームワークのデータ型の1つ
    色を解析する方法を示す色空間(color space)を含む色(color)の要素のセットを定義します.
    →つまり、コアグラフィックに関連するすべての色をCGcolorとして指定するUIColor:色データと不透明度(アルファ値)が格納されているオブジェクト
    UIcolorはNSObjectを継承します. UImitフレームワークに関連付けられています.
    UImitは非常に基本的な色定義を提供しています.

  • UIKIを使用するかCALayerを使用するかを指定する必要がある場合は、Xcodeが表示されます.

  • UIKETはUICOLOR、CaLayerはCGCOLORを使用

  • https://zeddios.tistory.com/239-zeddブログ
  • インタフェースビルダーのプロパティ
  • シーケンスイメージボードはインタフェースビルダーを使用して編集されますが、シーケンスイメージボード識別子を設定すると、コードにもそのシーケンスイメージボードが表示されます.
  • OutletとActionをインタフェースビルダーからコードに接続します.
  • Auto Layoutでは、各インタフェース要素の相対的な位置にルールを作成できます
  • 2. Key points


    コードコメント

  • Project 1からリソースパスを取得するコード
    let items = try! fm.contentsOfDirectory(atPath: path)
    pathはリソースパスを参照します.
    ディレクトリが存在しない場合、contentsofDirectory()の呼び出しに失敗し、エラーが発生します.
    ただし、パスは直接取得されるため、強制ブロックを使用してコードが正常に動作することを保証します.
    すなわち、強制エンベロープを使用すると、エラーが発生しないため、エラーの検索が許可されないことを意味します.
    ただし、コードが間違っている場合は、アプリケーションが競合します.

  • シーケンスイメージボードとコードを接続するコード
    let cell = tableView.dequeueReusableCell(withIdentifier: "Picture", for: indexPath)
    
    if let vc = storyboard?.instantiateViewController(withIdentifier: "Detail") as? DetailViewController {
    }
    シーケンスイメージボードを識別子でコードに関連付けたコード.
    2番目のビューコントローラオブジェクトを生成するコードは、if letおよびas?を使用します.これは、DetailViewControllerが選択した画像構成を持っているため、通常のUI ViewControllerではなく、サンプルViewController()が返す値のみであるため、クラス選択でアクセスできます.
    🌟 カスタムセルでもアウトラインを使用する場合は、タイプ鋳造(第2セグメントコードなど)でアクセスします.
  • 3. Challenge


  • ディスクからイメージをロードするコード
    let fm = FileManager.default
    let path = Bundle.main.resourcePath!
    let items = try! fm.contentsOfDirectory(atPath: path)
    
    // 앱 번들에 있는 모든 항목의 배열을 제공하지만 원하는 것을 구분하기위해 hasSuffix()메서드사용
  • リンク


    100 Days of Swift - Day 23 - Hacking with Swift