2

プロジェクトを10.7SDKに更新し、デバッガーを切り替えた後、次のメッセージが表示されました。

Property with 'iboutlet' attribute must be an object type (invalid 'BOOL' (aka 'signed char'))

アップデート前は完全に機能していました。それを修正する方法についてのヒントはありますか?

4

4 に答える 4

7

マップフレームワーク(MapKit / MapKit.h)をインポートする必要があります

#import <MapKit/MapKit.h>
于 2014-08-12T13:47:44.103 に答える
6

コンポーネントにカスタムクラスを使用している場合(つまり、UI *からのサブクラス化)、プロパティポインターがコンパイラーの単なる(id)ではないように、クラスの.hファイルをインポートする必要があることに注意してください。

于 2013-03-19T12:04:08.823 に答える
1

リンクを解除してIBOutletを再度リンクするかboolValue、オブジェクトを保持している変数にを割り当ててみてください。

私の知る限り、新しいSDKでは多くのことが非推奨になり、正しく機能しなくなります。だから私はベータ版を使うのが嫌いです!

于 2012-06-24T09:12:48.203 に答える
1

IBOutletsは常にオブジェクトであり、xibs / nibsで参照される値であり、スカラー値を使用して実際に行うことはできません。ブール値を設定する必要がある場合は、オブジェクトの-awakeFromNibメソッドで、または実行している内容に応じて、セッターを呼び出すことができます。kvoまたは委任が適切な場合があります。

于 2012-06-24T16:56:15.423 に答える