1

例から始めましょう。iPhoneで連絡先プログラムに入り、TextFieldの「検索」と入力すると、キーボードが自動的に表示され、下のtableViewが暗くなります(非アクティブになります)。次に、この暗い非アクティブ化されたリストに触れると、キーボードが非表示になり、リストが正常になります。

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

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

マート

4

2 に答える 2

2

UIViewをuibuttonに設定して、必要なときにキーボードを閉じることができるようにします。ああ、それはすでにありました!

OK、ボタン自体を追加する方法を示すコードを次に示します。

   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];
于 2009-07-06T12:20:27.737 に答える
1

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

于 2009-07-06T11:36:35.030 に答える