問題タブ [awakefromnib]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
314 参照

objective-c - NSLogエントリが重複しています

プロジェクトが非常に大きいため、ここに関連するコードを含めることができるかどうかはわかりませんが、NSLog1回の呼び出し/エラーのみが発生しているときに警告と呼び出しを繰り返す一般的な理由はありますか?

NSBox例として、次のクラスのインスタンスを初期化するサブクラスがありawakeFromNibます。

「 initok NSLog」を2回出力します。このサブクラスがプロジェクトのどこかで2回「目覚めた」理由がわかりません。nilこれは、インスタンスを作成しているクラス以外のものを返す変数を取得できないという、より大きな問題の一部です。おそらく二重の値がそれと関係があるのだろうかと思います。

0 投票する
2 に答える
5754 参照

ios - UIKit:プログラムでawakeFromNibを呼び出しますか?

私はこのコードを見ました:

CoolButtonサブクラスUIButton。プログラムで呼び出すことはawakeFromNibできますか?

-[CoolButton awakeFromNib]nibファイルからではなく、プログラムでオブジェクトを作成したいときに行ったのと同じことをしたい場合、これを行う最善の方法は何ですか?

-[CoolButton awakeFromNib]メソッドを定義してandで呼び出すだけ-[CoolButton initWithFrame]ですか? または、両方の場合に呼び出される定義する必要がある別の初期化メソッドがありますか:CoolButtonプログラムで作成するか、nib ファイルから作成するか?

0 投票する
1 に答える
4435 参照

ios - awakeFromNib の利点は?

「coredata を使用する」にチェックを入れた xcode ナビゲーション コントローラー テンプレートに基づいて、多くの簡単なテスト アプリを作成することで、coredata を学習してきました。

App デリゲートの awakeFromNib メソッドは、私にとって問題の原因でした。コントローラーに他のビューを追加し、ロード シーケンスを変更して、RootViewController が 2 番目または 3 番目の選択肢になる可能性があるためです。

私は awakeFromNib が何をしているのかを把握し、それを削除したので、アプリのデリゲートは特定のビューに関連付けられなくなりました。(したがって、RootViewController をロードしたい場合は、それを通常のビューとしてロードし、独自の viewDidLoad を使用してビューの managedObjectContext を初期化します)。

私の質問: AppDelegate で awakeFromNIb を使用することにより、パフォーマンスの向上やその他の利点はありますか? それとも、viewDidLoad メソッドから行っているのと同じことを行う別の方法ですか?

0 投票する
4 に答える
15949 参照

ios - IBOutlet が awakeFromNib で接続されていません

ここにリンクされているサンプル コードはうまく機能し、UIScrollView がページング付きの画像を表示し、現在の画像の前後に画像をプレビューできるようにします。

再利用できる単一のコントロールに例をカプセル化しようとしています。そこで、PagingScrollView を作成しました。

汚れの簡単な実装

PagingScrollView.xib では、元の ScrollViewPagingExampleViewController xib とまったく同じように、UIScrollView と ARScrollViewEnhancer を含むビューを配置しました。そのファイルの所有者のクラスは PagingScrollView に設定され、その scrollView アウトレットは子 UIScrollView に設定されます。

ScrollViewPagingExampleViewController では、次のように宣言するだけです。

IB では、View をドラッグし、そのクラスを PagingScrollView に設定し、その pagingScrollView アウトレットを PagingScrollView に接続します。

awakeFromNib では、scrollView プロパティは nil です。scrollView は同じ nib の IB に接続されているため、この時点で利用可能になると思います。

紛らわしいことに、ScrollViewPagingExampleViewController.xib には、scrollView という名前の空のアウトレットがあります。これは、PagingScrollView.xib で定義されているものとは異なる PagingScrollView のインスタンスがあることを示している可能性があります。

その結果、UIScrollView に実際の子ビューを設定できません。ここで何が間違っていますか?

0 投票する
2 に答える
354 参照

xcode - アプリケーション デリゲートのリファクタリング

私は Obj-C と Xcode 4 の初心者で、現在Mac Dev Web サイトの「初めての Mac アプリケーション」を調べています。私はなんとか主要部分を通過しましたが、「アプリケーションデリゲートのリファクタリング」セクションで苦労しています。

(コントローラーとして使用する) 新しいクラスを作成し、この新しいクラスにオブジェクト セットを追加し、クラスからスライダー、ミュート ボタン、テキスト フィールドへの接続を作成し、新しいクラス オブジェクトをアプリ デリゲートに接続しました。インターフェイスファイル。

残念ながら、track クラスのインスタンスが作成されないため、awakeFromNib 関数が呼び出されないため、プログラムは機能しません。アプリデリゲートファイルと新しいコントローラークラスの両方に配置しようとしました。

どこが間違っているのですか?

0 投票する
1 に答える
979 参照

cocoa - WindowController に対して awakeFromNib が 2 回呼び出されましたが、正しいですか?

awakeFromNib は 1 回だけ呼び出すように言われたので、WindowController に対して 2 回呼び出されたことに非常に驚きました。IB を使用して MainMenu.xib に WindowController を作成しますが、読み込むウィンドウの xib ファイルを指定するために、init メソッドを追加しました。

コードをデバッグすると、このコール スタックによってトリガーされた awakeFromNib への最初の呼び出しが見つかりました。したがって、基本的に [MyWindowController init] が最初の呼び出しをトリガーしました。それから、私が推測する 2 番目の呼び出しは、MainMenu.xib のロードが原因でした。あれは正しいですか ?

誰かがそれに光を当てることができますか?

ところで、スタックオーバーフローに関する私のものと同様の他の質問をいくつか読みましたが、ファイルオーウェンの問題が原因である可能性があるとの回答がありました。そのため、特にウィンドウ xib ファイルのファイル所有者を NSApplication に変更します。しかし、MyWindowController に対してはまだ awakeFromNib が 2 回呼び出されていました。

ここに画像の説明を入力

0 投票する
2 に答える
239 参照

objective-c - ビューコントローラから新しいUIViewControllerをすぐに開始する

UIViewControllerが起動したら、すぐに別のUIViewControllerを起動したいと思います。これは機能しません:

これが機能するためには、次のようなメソッドのafterDelayを実行する必要があります。

遅滞なく動作させることは可能ですか?

0 投票する
1 に答える
859 参照

iphone - awakeFromNibでデリゲートを設定する

TableViewControllerが埋め込まれたViewControllerがInterfaceBuilderにあります(TableViewControllerの機能を他の場所で再利用しています)。UIViewControllerのNavigationControllerを使用できるように、TabelViewControllerのデリゲートを埋め込まれているUIViewControllerに戻す必要があります(埋め込まれたTableViewControllerの行をクリックすると、新しいViewControllerが表示されます...)。

これをすべて機能させるためのデリゲートがあります。唯一の問題は、デリゲートをどこに設定するかです。awakeFromNibペン先が読み込まれ、すべてのIBOutletが設定されると呼び出されることを読みました(埋め込まれたTableViewControllerはIBOutletです)。コードをステップスルーすると、アプリが最初に起動したときにこの関数が呼び出されることがわかります。ただし、後でデリゲートを呼び出すと(行がクリックされたとき)、デリゲートはnullです。デリゲートをに設定するとviewDidLoad、すべてがうまく機能します。

awakeFromNibが機能しない理由はありますか?とにかくviewDidLoadでこれを行う必要がありますか?

ありがとう!

0 投票する
1 に答える
415 参照

iphone - ローカリゼーションの問題を回避するためのカスタム UILabel の作成

親愛なるプログラマーへ

以下のような customLabel クラスを作成しています。

しかし、私の問題は、drawTextInRect メソッドが、ペン先の読み込み時に Label に対して 1 回だけ呼び出されることです。

view が popig によって再び表示される場合、すべての customLabel オブジェクトに対してどのメソッドが実行されますか?

私を助けてください。前もって感謝します。