[解決済み] UIViewのリサイズイベントはありますか?
2022-11-30 07:16:38
質問
イメージビューの行と列を持つビューがあります。
このビューのサイズが変更された場合、私はimageviewsの位置を再配置する必要があります。
このビューは、リサイズされる他のビューのサブビューです。
このビューがリサイズされていることを検出する方法はありますか?
どのように解決するのですか?
Uliが以下のようにコメントしているように、正しい方法は、オーバーライド
layoutSubviews
をオーバーライドし、そこにimageViewsをレイアウトすることです。
もし何らかの理由でサブクラス化してオーバーライドできない場合は
layoutSubviews
を観察してください。
bounds
を観察すれば、多少汚くても動作するはずです。さらに悪いことに、観察にはリスクがあります。AppleはKVOがUIKitのクラスで動作することを保証していません。Appleのエンジニアとの議論はこちらです。
関連付けられたオブジェクトはいつ解放されるのですか?
オリジナルの回答です。
key-valueの観測を利用することができます。
[yourView addObserver:self forKeyPath:@"bounds" options:0 context:nil];
と実装します。
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
if (object == yourView && [keyPath isEqualToString:@"bounds"]) {
// do your stuff, or better schedule to run later using performSelector:withObject:afterDuration:
}
}
関連
-
[解決済み] ペン先を読み込んだが、「表示」コンセントが設定されていない
-
[解決済み] Xcodeエラー "Could not find Developer Disk Image" が発生する。
-
[解決済み] キーボードがあるときに、UITextFieldを編集開始時に上に移動させるには?
-
[解決済み] 制約条件の変更をアニメーションで表現するには?
-
[解決済み] iOS 13 のフルスクリーンでモーダルを表示する
-
[解決済み] UIViewに角丸をつける
-
[解決済み] iOS 7でステータスバーとナビゲーションバーがビューの境界を越えて表示される
-
[解決済み】Xcode 6でAutoLayout制約を使用してアスペクトフィットの動作をエミュレートする
-
[解決済み] 透明なUIViewの後ろでボタンをクリックするにはどうしたらいいですか?
-
[解決済み] UIImageのアスペクト比と幅を維持したリサイズ
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] UITextViewのキーボードをリターンキーで解除するには?
-
[解決済み] UIViewのサブクラス化のための適切なプラクティス?
-
[解決済み] モバイルSafari(iPhone)でテキストエリアのインナーシャドウを除去する
-
[解決済み] レビュー待ちの状態でバイナリを拒否する(バイナリ拒否ボタンが見つからない)
-
[解決済み] iPhone/iPadのディスクの空き容量を確認する方法を教えてください。
-
[解決済み] Push Notificationのアラートテキストは何文字まで可能ですか?
-
[解決済み] iPhoneのSafariで<body>に適用したoverflow:hiddenは機能するのか?
-
[解決済み] Mac OS Xのスタティック・ライブラリ(.a)のターゲット・アーキテクチャはどのように決定するのですか?
-
[解決済み] カメラロールに画像を保存する方法を教えてください。
-
[解決済み] iPhoneでNSStringをAES暗号化する方法