問題タブ [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.
ios - カスタム UITableViewCell の awakeFromNib と initWithFrame の比較
カスタム UITableViewCell を作成する必要があるため、関連付けられた nib ファイルを使用してサブクラスを作成しました。
それにいくつかのサブビューを追加する必要があります。nibファイルを使用する場合、awakeFromNibはinitWithFrameを置き換えますか? 私は[[NSBundle mainBundle] loadNibNamed:
自分のcellForRowAtIndexPath
方法で使用しています。
そのように initWithFrame を使用しますか?
それとも、awakeFromNibでそうするのですか
ios - UIAlertView に似たアラート ビューを表示する
カスタムの「アラート ビュー」を作成しようとしていますが、UIAlertView のように現在のビューの上にビューを表示したいだけです。
ここに問題があります... nibファイルでビューを作成しましたが、アラートを表示する必要があるときはいつでもビューを割り当て/初期化したいと思います.誰か助けてくれますか?
これは、ビューを初期化しようとする私の試みです...現在、新しいアラートビューを割り当て/初期化すると、アプリがクラッシュします。
ビューがアウトレットのキー値に準拠していないことを教えて、アプリがクラッシュしています..「ファイルの所有者」が台無しにされていない限り、アウトレットは確実に正しく接続されています。
NSObject 0x14e49800> setValue:forUndefinedKey:]: このクラスは、キーのキー値コーディングに準拠していません....
ビューを表示するためにこのメソッドを作成しました。単純な addSubview です...
ios - awakefromnibをリコールする方法
.xib が表示されるときに、UIButton/UILabel/UITextField などの各コントロールを取得したいと思います。また、awakefromnib で実行できることはわかっていますが、awakefromnib を自動的に再度呼び出すにはどうすればよいですか。ありがとうございます。
実際、私の目標は、IPad/Iphone の設定言語に従わずに .xib をローカライズすることです。ローカライズにはhttps://github.com/AliSoftware/OHAutoNIBi18nを使用します。誰かが私に提案をしてくれることを願っています.ありがとう!
objective-c - メインViewControllerのxibファイルからawakeFromNibを呼び出す
UITableView
xib ファイルを使用するカスタム セルがあります。UILabel
高さ 200、幅 50 のをプログラムで作成しました。ラベルの幅と高さの in を実行すると、w: 50 と h: 200NSLog
が得られます。高さと幅。customCell.m
NSLog
mainViewController.m
なぜそうするのかわからない。ラベルの実際の高さを取得する必要がありますmainViewController.m
これが私のコードです:
customCell.m
mainViewController.m
xib ファイルを使用する場合、 atawakeFromNib
が呼び出されるはずがありませんか? そうでない場合、どのように呼び出すのですか?mainViewController.m
viewDidLoad
viewDidLoad
ios - awakeFromNib から mainViewController.m までのオブジェクトの高さを取得するにはどうすればよいですか?
UILable
のxibファイルクラスにプログラムで作成しawakeFromNib
、ラベルの高さを取得しようとしていmainViewController.m
ます. を使用して xib ファイルを読み込もうとしましたNSBundle
が、うまくいきませんでした。ロードする別の方法はありますか?awakFromNib
電話する必要がありますviewDidLoad
。
これが私のコードです:
mainViewController.m
ではなくNSLog
を表示する必要があります。200
0
ios - awakeFromNib で DataSource メソッドを呼び出す
したがって、質問は次のようになります。
UIView(name: Menu) と UIViewController(name: MainController) の 2 つのクラスをサブクラス化します。メニューでは、xib ファイルを使用してレイアウトを作成しました。MainController では、このように Menu をサブビューとして追加し、Menu のプロトコルに準拠させました。
レイアウトは完璧に機能し、問題はありません。
問題は DataSource にあります。awakeFromNibでデータソース メソッドを呼び出します
そして、それは呼び出されることさえありません。試行錯誤した後、 awakeFromNibsliderMenu.datasource = self;
の後に実行されることがわかりました。これが、MainController のデータソース メソッドが呼び出されない理由です。
質問: どうすればこの問題を解決できますか?
ios - 一部の IBOutlets は、IB を使用して作成されたビューで nil です
xib で IB を使用してビューを作成し、ビューをロードしました。コンテナー (画像、ラベル、ボタンなど) をカスタマイズしようとすると、カスタマイズされるコンテナーとカスタマイズされないコンテナーがあります。画像ビューで画像を設定している場合と同様に、ボタン/ラベルのカスタマイズに失敗します。これらのカスタマイズはすべてawakeFromNib
メソッドで行っています。このメソッドは、xib を使用して作成されたビューに保持されます。
舞台裏で何が起こっているのかを確認するためにデバッグしようとしました。xib からのビューのインスタンスが作成さawakeFromNib
れるたびに、画像の残りの部分が下のスクリーンショットで適切に表示されます
スクリーンショットが示すように、私のコードは awakeFromNib メソッドのブレークポイントによって停止され、デバッガーはビューがメモリ内に作成されていることを示しています。サブビューの画像も作成されていますが、ラベルとボタンは nil であり、lldb を使用してデバッガーに表示されているものかどうかを確認していますは正しい。
今、私はXIB
いくつかのコンテナを作成したり、awakeFromNib
メソッドにないものを使用してIBOutlets
ビューを作成するこの動作を理解できませawakeFromNib
んawakeFromNib
。でもきっとそうじゃない。
上記のデバッグの動作のデコード/リバース エンジニアリング、または nib を使用してビューを作成する際の助けをいただければ幸いです。
よろしくお願いします。