0

ビューの下部に検索バーがあります。

UIKeyboard の位置を設定するにはどうすればよいですか?

4

3 に答える 3

2

CGAffineTransform を使用 少なくとも私が観察してテストしたことから、4.0 より前の OS バージョンでは変換を定義する必要があり、OS 4.0 以降の OS ではキーボードの配置が処理されます。そのため、ここでは Transform を設定する前に systemVersion をチェックしています。

    if ([[[UIDevice currentDevice] systemVersion] floatValue] < 4.0) {
        CGAffineTransform translate = CGAffineTransformMakeTranslation(xx.0, yy.0);//use x,y values
        [self setTransform:translate];
    }
于 2010-09-26T16:06:30.440 に答える
1

キーボードの位置を設定することはできません。キーボードの位置を尋ねて、他のビューを適切に整理することしかできません。

// Somewhere you need to register for keyboard notifications

- (void)viewDidLoad {
    [super viewDidLoad];

    // Register for keyboard notifications
    NSNotificationCenter *defaultCenter = [NSNotificationCenter defaultCenter];
    [defaultCenter addObserver:self selector:@selector(keyboardWasShown:)
                          name:UIKeyboardDidShowNotification object:nil];
    //... do something
}

// At some point you need to unregister for notifications
- (void)viewWillHide {
    NSNotificationCenter *defaultCenter = [NSNotificationCenter defaultCenter];
    [defaultCenter removeObserver:self];
}

- (void)keyboardWasShown:(NSNotification*)aNotification
{
    // Caution, this notification can be sent even when the keyboard is already visible
    // You'll want to check for and handle that situation
    NSDictionary* info = [aNotification userInfo];

    NSValue* aValue = [info objectForKey:UIKeyboardFrameEndUserInfoKey];

    CGSize keyboardSize = [aValue CGRectValue].size;

    //... do something
}
于 2010-09-26T15:24:06.610 に答える
1

キーボードの位置を設定しません。システムが自動的にそれを行います。

あなたがする必要があるのは、キーボード通知を使用して検索バーを表示可能な部分に移動することです

于 2010-09-26T15:26:12.697 に答える