1

だから私はグローバル関数を作成する方法についてこのチュートリアルに従いました..私のグローバル関数を除いてすべてが機能しています:

[self.view addSubview:gld];

そして、私はself.viewでエラーが発生しています..何かアイデアはありますか? 関数を呼び出したビューであるためには、self.view部分が必要です..

エラー:

タイプ 'GlobalData*' のオブジェクトにプロパティ 'view' が見つかりません

4

3 に答える 3

3

受け取ったエラーは、GlobalData にビューというプロパティがないことを意味します。クラス UIViewController から継承できないインスタンスにはビュー プロパティがあります。そのため、GlobalData が UIViewController、または UIView プロパティを持つ他のクラスから継承されていることを確認する必要があります。

編集

あなたの言いたいことはわかりましたが、今ではより明確になり、正しい命名法を使用していません。GlobalData のメソッドは、次のように変更する必要があります。

-(void)loadInfo:(UIView*)superView { [superView addSubview:superView]; }

そして、次のように呼び出します。

[[Globaldata sharedGlobalData] loadinfo:self.view];

于 2012-07-18T11:51:13.820 に答える
1

self.viewアプリのスーパー ビューを参照してください。メソッドを呼び出すと、グローバル関数ではなく、「[self.view ...]」によってこのビューに関連付けられます。

それらを呼び出すには、次のようなクラスで呼び出す必要があります

[MyFunctionClass Function];
于 2012-07-18T11:49:18.677 に答える
1

あなたが投稿した id から見えるように、GlobalDataから返されたと思われるあなたのクラスはself、viewController またはビューを含む他のクラスではありません。

だからあなたは基本的に尋ねています

「これまでの自己の見方を教えてください」(GlobalData クラスだと思います)

Xcode は次のように応答します。

「申し訳ありませんが、「自己」にはビューがありません」

于 2012-07-18T11:49:01.293 に答える