私はEAGLViewクラスのクラス "A"のインスタンスを持っています。これはEAGLViewのinitWithCoderメソッドでインスタンス化されています。IBOutletがnilを取得する問題
このクラス「A」には、UIViewへのIBOutletが含まれています。
また、クラス「A」IBOutletを対応するビューに接続するために、このクラス「A」のインスタンスがInterface Builderにあります。
したがって、awakeFromNibメソッドのIBOutletが完全に動作しているInterface Builderによってクラス "A"が2回インスタンス化されています。しかし、これはEAGLViewによって再びインスタンス化されています。今回はUIViewに接続するコンセントは明らかにUIViewに接続されていないので、それはゼロです。
この問題を回避するには、設計の観点から何ができますか? 、私は本当にそれが十分明確であることを非常に明確にするように努めました。
別のインスタンスを作成する代わりに、NIBローダーによって作成されたインスタンスを使用する方法はありますか?そのクラスは、ユーザーが何らかのアクションを実行したときに、元のUIViewを変更したり、変更したりする必要があります。 – Goles
NIBローダーが作成したインスタンスは、IBOutletに配線して使用します。 IBOutletを使用してNIBインスタンス化されたオブジェクトにアクセスできたとおっしゃいましたか? –