2011-06-30 12 views
0

UIAlertViewが表示されているときに他のウィンドウとの対話を使用できますか?UIAlertViewはすべての対話を無効にしません

解決方法私は、UIAlertViewウィンドウに表示される余分なUIWindowまたは小さいサイズの警告が考えられました。

これを達成する方法はありますか?

おかげ

EDIT:
私はUIAlertViewのインスタンスを使用する必要があります。私はすでにUIAlertViewが表示されている瞬間を認識する方法を見つけました。

答えて

1

アラートテキストとボタンでカスタムビューを作成し、UIAlertViewとして表示することを考えました。ボタンをクリックするとそのビューが非表示になります。あなたの目的を解決します。コードの下に同じものを使用することができます。 Plzあなたの要件に応じてx/y/height/widthを調整します。

UIView *customAlert = [[UIView alloc] initWithFrame:CGRectMake(100,100,100,100)]; 
UILabel *lblText = [[UILabel alloc] initWithFrame:CGRectMake(0,0,100,30)]; 
lblText.text [email protected]"Your alert text"; 

[customAlert addSubView:lblText]; 

UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
[button addTarget:self action:@selector(hideAlertView:) forControlEvents:UIControlEventTouchDown]; 
[button setTitle:@"OK" forState:UIControlStateNormal]; 
button.frame = CGRectMake(30.0, 50.0, 50.0, 50.0); 
[customAlert addSubview:button]; 

[self.view addSubView:customAlert]; 

-(IBAction)hideAlertView:(id)sender 
{ 
    [customAlert removeFromSuperView]; 
} 

EDIT

UIAlertViewがMODAL行動であるとして、それが却下されるまで、あなたのアプリケーションの他の部分に触れることができません。

+0

[OK]をクリックします。それは私の通常の解決策ですが、私はUIAlertViewインスタンスを使用する必要があります。私は私の質問を編集します。 –

+0

@Mats私の更新された回答を確認してください。 –

+0

私はあなたの解決策を見ています。そして私が言ったように、私は通常それを使用します。しかし、あなたはUIAlertViewを使用せず、私はを(ひどく)...持っていますので、私の質問は、モーダルUIAlertView上のビュー/ウィンドウを置くことができますか? –

0

スウィフトソリューション:

// Define a view 
    var popup:UIView! 
    func showAlert() { 
    // customise your view 
    popup = UIView(frame: CGRect(x: 100, y: 200, width: 200, height: 200)) 
    popup.backgroundColor = UIColor.redColor() 

    // show on screen 
    self.view.addSubview(popup) 

    } 

    func dismissView(){ 
    // Dismiss the view from here 
    popup.removeFromSuperview() 
    } 
関連する問題