2011-07-10 14 views
1

私は自分の.hファイル(@property ...)と私の.mファイル(@synthesize ...)でアラートビューを定義しました。複数の方法でアラートビューのallocがある場合、これがhとmファイルで定義したアラートビューであることをどのように伝えますか?アラートビューを定義して使用する

+0

あなたはあなたがヘッダーで宣言したプロパティにどのように割り当てるのですか?それとも、ヘッダに宣言されているプロパティにすでに設定されているものと同じかどうかを調べるためにUIAlertViewをテストするにはどうしたらいいですか? – Dancreek

+0

私は、hとmファイルで定義したこのアラートビューを呼び出すメソッドを呼び出すと、後で別のメソッドでそれを閉じます。ある方法で警告表示について話したら、もう1つの方法は私が何を話しているのか分かりません。そこで、hとmファイルのalertビューをalertViewLoadingとして定義しました。ですから、ある方法では、alertViewLoadingを割り当てたいと思います。しかし、私はそれをどうやってやるのだろう?そして別の方法でそれをリリースします。これは[alertViewLoading release];でしょう。ご協力いただきありがとうございます! –

+0

あなたが定義した 'UIAlertView'の*サブクラスか、' UIAlertView * '型のプロパティですか? –

答えて

0

の両方に警告クラスをインポートしていることを確認してください必要なのは、あなたが設定したプロパティにアラートビューを割り当てるだけです。ここで、myAlertPropertyはあなたのインタフェースと実装の不動産あなたのセットアップです同様:

UIAlertView *newAlert = [[UIAlertView alloc] initWithTitle:@"SomeTitle" message:@"SomeMessage" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; 
self.myAlertProperty = newAlert; 
[newAlert show]; 
[newAlert release]; 

それは大丈夫です(と最高の)あなたがプロパティに割り当てているので、ここで解放するためには、(あなたは@propertyにretainを持っていると仮定) 。あなたが却下を処理するときには、ちょうど言うことができます:

self.myAlertProperty = nil; 
0

以下を試してください。あなたは、別のアラートクラスでアラートビューを定義していると仮定すると:

のViewController Aでは
- (void)addToView:(UIView *)view 
    // Adds itself as a subview to the specified view. 
{ 
    [self addToView:view animated:NO]; 
} 

、あなたは現在のビューにアラートを追加するために警告クラスを呼び出します。

[self.alertView addToView:parentViewController.view]; 

は、ビューBで、あなたはスーパービューから削除警告クラスを呼び出す:

[self.alertView removeFromSuperviewAnimated:YES]; 

あなたはすべてのViewController AとのViewController B

+0

addSubviewとremoveFromSuperViewを意味しますか? –

+0

これは 'UIAlertView'の使用方法ではありません。モーダルで表示され、決して別のビューのサブビューとしては表示されません。 –

+0

私はUIAlertViewを呼び出さなかった。私はUIAlertViewと外観が似ているサブビューを持っています。このサブビューは他のもの(アクティビティインジケータ)を実行できるようにしています。この例ではalertViewと呼んでいます。多分もっと良い方法があるかもしれませんが、私は提案をしたいと思っていました。私が上に挙げたものは私のために働く。 – DenVog

関連する問題