タグ付きのビューが見つかりません

誤ったスイッチ

私のviewWillAppear()で、ラベルを作成してタグを付けます。別の条件が満たされた場合、ラベルを削除しようとしましたが、何らかの理由でそれが機能せず、ラベルはまだ表示されています。私は何か間違ったことをしているに違いない...

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)

    var label: UILabel?

    // Add label if there are no recipes
    if (recipeBook.recipesArr.count == 0) {

        label = self.view.viewWithTag(123) as? UILabel
        //label?.tag = 123 // arbitrary num

        label = UILabel(frame: CGRect(x: 0, y: self.view.frame.height/3, width: self.view.frame.width, height: 100))
        label?.text = "Add A Recipe"
        label?.textColor = UIColor(red:0.93, green:0.92, blue:0.92, alpha:1.0)
        label?.font = label?.font.withSize(36)
        label?.textAlignment = .center

        self.view.addSubview(label!)
    }

    else {

        // remove it
        if let foundLabel = self.view.viewWithTag(123) {
            foundLabel.removeFromSuperview()
        } else {
            print("Couldn't find label with tag in view")
        }

    }

}

この行でlabel = UILabel(frame: CGRect(x: 0, y: self.view.frame.height/3, width: self.view.frame.width, height: 100))、デフォルトのタグが0の新しいラベルを作成していることに気づきませんでした。新しいラベルを作成せずlabel?.frame = CGRect(x: 0, y: self.view.frame.height/3, width: self.view.frame.width, height: 100)、すべてが正常に機能するように変更しました。愚かな間違い。

真実の支持者

あなたのコードはあなたが思っていることをしていません。あなたのrecipesArrが空の場合(またはより正確にはカウントがゼロの場合)、タグ123のラベル/ビューを見つけようとしています。それは無視され、新しいラベルを作成しますが、タグを付けません。

次のようにタグを作成した後、タグ123を作成するラベルを割り当てる必要があります。

label?.tag = 123

次に、ラベルを作成し、タグを設定して、後で見つけられるようにします。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ビュー[ログイン]が見つかりません

分類Dev

末尾に番号が付いているビューのビューが見つかりません

分類Dev

React-Native-名前「カスタムタグ」のビュー設定が見つかりません

分類Dev

idviewpagerフラグメントandroidのビューが見つかりません

分類Dev

Laravelビューレジスタが見つかりません

分類Dev

ShooksFragmentのIDのビューが見つかりません

分類Dev

MyProjectName.Views.MyViewNameのビューが見つかりません

分類Dev

Lumen 5.2.6のInvalidArgumentException、「ビューが見つかりません」

分類Dev

円形画像ビューの属性が見つかりません

分類Dev

タブレット画面の向きの変更-フラグメントのIDのビューが見つかりません

分類Dev

ダイアログ内のフラグメントのid ...のビューが見つかりません

分類Dev

KatalonStudioに「グローバル変数ビュー」が見つかりません

分類Dev

KatalonStudioに「グローバル変数ビュー」が見つかりません

分類Dev

ビューのタグで渡すパラメータを検索しましたが、役立つものは見つかりませんでした

分類Dev

Xcodeでスタックビューボタンが見つかりません

分類Dev

重力左で引き出しビューが見つかりません

分類Dev

コア3.0での文字列へのビューのレンダリング:ActionContextに関連付けられたIRouterが見つかりませんでした

分類Dev

名前付きカーソルのモジュールが見つかりません

分類Dev

新しいSwiftアプリリスターエラー:「一致するプロビジョニングプロファイルが見つかりません」、「識別子付きのアプリIDが利用できません...」

分類Dev

androidstudioのカスタムビューのカスタム属性が見つかりません

分類Dev

(WAR)Spring BootAdminカスタムビューが見つかりません

分類Dev

GithubからのDockerfile自動ビルド-タグが見つかりません

分類Dev

ストラップ付きの電子、モジュールpackage.jsonが見つかりません

分類Dev

ビュー「削除」またはそのマスターが見つかりませんでしたasp.netmvc5

分類Dev

Angular 2 の名前付きルーター アウトレットが見つかりませんか?

分類Dev

viewpagerのフラグメント、ビューが見つかりませんエラー

分類Dev

idのビューが見つかりません...フラグメントPlaceholderFragmentの

分類Dev

AndroidPreferenceFragmentフラグメントのIDのビューが見つかりません

分類Dev

java.lang.IllegalArgumentException:フラグメントNewLogFragmentのIDのビューが見つかりません

Related 関連記事

  1. 1

    ビュー[ログイン]が見つかりません

  2. 2

    末尾に番号が付いているビューのビューが見つかりません

  3. 3

    React-Native-名前「カスタムタグ」のビュー設定が見つかりません

  4. 4

    idviewpagerフラグメントandroidのビューが見つかりません

  5. 5

    Laravelビューレジスタが見つかりません

  6. 6

    ShooksFragmentのIDのビューが見つかりません

  7. 7

    MyProjectName.Views.MyViewNameのビューが見つかりません

  8. 8

    Lumen 5.2.6のInvalidArgumentException、「ビューが見つかりません」

  9. 9

    円形画像ビューの属性が見つかりません

  10. 10

    タブレット画面の向きの変更-フラグメントのIDのビューが見つかりません

  11. 11

    ダイアログ内のフラグメントのid ...のビューが見つかりません

  12. 12

    KatalonStudioに「グローバル変数ビュー」が見つかりません

  13. 13

    KatalonStudioに「グローバル変数ビュー」が見つかりません

  14. 14

    ビューのタグで渡すパラメータを検索しましたが、役立つものは見つかりませんでした

  15. 15

    Xcodeでスタックビューボタンが見つかりません

  16. 16

    重力左で引き出しビューが見つかりません

  17. 17

    コア3.0での文字列へのビューのレンダリング:ActionContextに関連付けられたIRouterが見つかりませんでした

  18. 18

    名前付きカーソルのモジュールが見つかりません

  19. 19

    新しいSwiftアプリリスターエラー:「一致するプロビジョニングプロファイルが見つかりません」、「識別子付きのアプリIDが利用できません...」

  20. 20

    androidstudioのカスタムビューのカスタム属性が見つかりません

  21. 21

    (WAR)Spring BootAdminカスタムビューが見つかりません

  22. 22

    GithubからのDockerfile自動ビルド-タグが見つかりません

  23. 23

    ストラップ付きの電子、モジュールpackage.jsonが見つかりません

  24. 24

    ビュー「削除」またはそのマスターが見つかりませんでしたasp.netmvc5

  25. 25

    Angular 2 の名前付きルーター アウトレットが見つかりませんか?

  26. 26

    viewpagerのフラグメント、ビューが見つかりませんエラー

  27. 27

    idのビューが見つかりません...フラグメントPlaceholderFragmentの

  28. 28

    AndroidPreferenceFragmentフラグメントのIDのビューが見つかりません

  29. 29

    java.lang.IllegalArgumentException:フラグメントNewLogFragmentのIDのビューが見つかりません

ホットタグ

アーカイブ