2009-07-06 15 views
1

iPhoneから連絡先プログラムを入力し、TextFieldの「検索」を入力するとキーボードが表示され、tableViewの下が暗くなります非アクティブ化)。次に、この暗い無効リストに触れると、キーボードが隠れてリストが正常になります。iPhone:TextFieldフォーカス上の他の要素を無効にする

この機能を再現したいのですが、どうすればよいかわかりません。 ココアの方法はありますか、それとも私自身で再開発する必要がありますか?

アドバイスいただきありがとうございます。

マート

答えて

2

UIViewをuibuttonに設定して、必要なときにキーボードを閉じることもできます。ああ、それは既にあった!あなたはUIButtonを使用している場合は、キーボードを解放するためにそれをタップし、

CGRect frame = CGRectMake(0, 
                 0, 
                 [self parentViewController].view.bounds.size.width, 
                 [self parentViewController].view.bounds.size.height); 
    imageView = [[UIButton alloc] initWithFrame:frame]; 
    [imageView setAlpha:0]; 
    imageView.opaque = NO; 
    [UIView beginAnimations:nil context:NULL]; 
    [UIView setAnimationDuration:2]; 
    [imageView setAlpha:0.8]; 
    imageView.backgroundColor = [UIColor blackColor]; 
    [UIView commitAnimations]; 
    [imageView addTarget:self action:@selector(lockedScreenAction:) forControlEvents:UIControlEventTouchUpInside]; 

    [[self parentViewController].view addSubview:imageView]; 
+0

ありがとうシリル。 今私は自分のコードにcopyNpasteを作ることができ、それは完全に動作します:) – Martin

1

私はあなたがあなた自身のためにそれを開発する必要があるとしているかなり確信しています。私の電話での効果を見て、私は私のUITableViewを覆っている完全に透明な(しかし黒い)UIViewを持っていると思う。 UIKeyboardWillShow通知に登録し、受け取ったら、そのUIViewの不透明度を70%にアニメーション化します。 UIKeyboardWillHideのプロセスを逆にします。

+0

も簡単です:

OK、ここではボタン自体を追加する方法を示したコードのビットです。ボタンの種類をカスタムに、backgroundColorを0.7アルファで黒に設定します。 –

+0

あなたのヒントのおかげで、みんな。 しかし、Appleがこの機能をそのココアSDKに入れていないのはかなり奇妙だと思います。 – Martin

+0

ビューをボタンにするというアイデアは、とても良いものです。 – mmc

関連する問題