23

iOS 7 で XCode 5 を実行しています。レイアウトの前に UITextView の高さの制約を動的に変更する必要があります。IB の制約からソース コードへのアウトレット接続を作成することでこれを行うことができるという多くの投稿を見てきました。IB の制約アウトレットから所有クラスのヘッダー ファイルへの接続を確立しようとしていますが、接続を確立できません。接続を確立するときのように、ヘッダー ファイルをドラッグしても IB は「強調表示」されません。ボタンなどの他のオブジェクトから

誰もこれに遭遇したことがありますか?すべてのヘルプは大歓迎です。

4

5 に答える 5

52

これが私がそれをしている写真です。制約からヘッダー ファイルにコントロール ドラッグしています。

ここに画像の説明を入力

実際には、IBOutlet プロパティをパブリックにしたくないので、実装ファイルの匿名カテゴリにコントロールを押しながらドラッグする可能性が高くなります。というわけで、こちらもその写真。申し訳ありませんが、このスクリーン ショットにはカーソルが表示されていません。カーソルはストレッチ ラインの下端にあります。

ここに画像の説明を入力

于 2014-03-01T04:24:20.217 に答える
1

UIView クラスで接続を作成しようとしていますか? ストーリーボードのそのシーンに関連付けられている UIViewController クラスでのみ接続を作成できるようです。

したがって、ビュー自体から実行したい場合、回避策はおそらく正しいことです。

于 2015-02-17T06:57:27.173 に答える
1

この回答には遅れていると思いますが、それでも書く価値があるかもしれません。同様の問題がありました。ビューのファイル所有者を正しく設定していませんでした。アシスタント エディターを使用して簡単なテストを実行できます。アシスタント エディターでビュー コントローラーの自動選択を選択できない場合は、ファイルの所有者が正しく設定されていないことを意味します。ビューコントローラーの名前が .xib ファイルと同じであることを確認します (よくあることです)。

これにより、制約を含むすべての IBOutlets を接続できます。

于 2016-04-29T23:12:41.457 に答える
0

わかりました、まだ IB の制約に接続できません。ただし、テキスト ビューの高さの制約を IB のプレースホルダーにして、ビューの initWithCoder で作成した NSLayoutConstraint に置き換えることで、この問題を回避しました。作成した制約への参照を維持し、必要に応じてその「定数」プロパティを変更します。

私はおそらくこの回避策に固執しますが、誰かが元の問題で私を助けることができれば、それは大歓迎です.

于 2014-03-01T04:02:27.923 に答える