1

これが起こっていることです:

セルのカスタム ビューを使用する xib に NSTableView があります。xibが開いているときに実行を押すと、これはうまくいきます。

ただし、xib を離れて他のファイルを開いた状態で実行すると、XCode によって xib が変更されます。作業中の xib をコミットし、ファイルを変更しました。これが xcode の変更内容です。

 <imageView horizontalHuggingPriority="251" 
            verticalHuggingPriority="251" 
            id="Ciy-iY-YFr">

[REMOVED]<rect key="frame" x="20" y="5" width="50" height="50"/>
[ADDED]<rect key="frame" x="20" y="-56" width="50" height="50"/>

基本的に、セル内にある私のimageViewを変更します。自動レイアウトを削除しようとしましたが、tableView を再度作成しましたが、これまでのところ何も機能しませんでした :/.

これは、OSX 10.8 の XCode 5.0.3 で発生しています。

4

1 に答える 1

1

何かを理解する必要があります。サブクラスで与えられた を見ているからframeUIView'sいって、コードが実行されたときにそこにあるとは限りません。自動レイアウトを使用している場合、ほとんどの場合、Nib ファイルに「オレンジ色」の行が表示されます。これは、ビューのフレームと実際の自動レイアウト制約の間に矛盾があることを意味します。そう

  1. 矛盾がないか確認してください (オレンジ色の線。青色が良いです!)。
  2. 自動レイアウトを無効にして、奇妙な自動サイズ調整マスクがあるかどうかを確認します。ビューのフレームに影響を与える可能性があります。
  3. どれも機能しない場合は、コードを使用してください。:)
于 2013-11-13T18:17:46.453 に答える