2016-03-24 14 views
0

私のアプリほとんどのページは横向きですが、ほんの数ページしか縦向きではありません。 Imageは私の問題を示しています。ポートレートの場合、キーボード/日付選択ツールの上にあるツールバーの位置が正しくありません。 デバイスの向きは、縦/横/横/右です。ポートレートのページに私のコードキーボードの上のiOSツールバーの位置が正しくない

- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation { 
    if ([NSObject isiPhone]) { 
     return UIInterfaceOrientationPortrait; 
    } 
    return UIInterfaceOrientationLandscapeLeft | UIInterfaceOrientationLandscapeRight; 
} 

- (UIInterfaceOrientationMask)supportedInterfaceOrientations { 
    if ([NSObject isiPhone]) { 
     return UIInterfaceOrientationMaskPortrait; 
    } 
    return UIInterfaceOrientationMaskLandscape; 
} 

- (BOOL)shouldAutorotate{ 
    return YES; 
} 

フォローは私のツールバーのコードですと:問題はまた、Web表示 my app Portrait view's structure

に発生した

UIToolbar *toolbar=[[UIToolbar alloc]init]; 
    toolbar.barTintColor=[UIColor lightTextColor]; 
    toolbar.frame=CGRectMake(0, 0, 320, 44); 
    UIBarButtonItem *item2=[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil]; 
    UIBarButtonItem *item3=[[UIBarButtonItem alloc]initWithTitle:@"OK" style:UIBarButtonItemStylePlain target:self action:@selector(click)]; 
    toolbar.items = @[item2,item3]; 
    self.babyBirthdayTextfield.inputAccessoryView=toolbar; 

私は、問題を修正しました。このストーリーボードのルートコントローラはモーダルウィンドウです。セグエの種類を変える

+0

キーボードにツールバーを追加する方法に関するいくつかのコードを追加してください – atulkhatri

答えて

0

ツールバーのフレームを手動で管理する必要はありません。ちょうどtextFieldのinputAccessoryViewを使用して、あなたは行こうとしています:

UIToolbar* toolbar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 50)]; 
toolbar.barStyle = UIBarStyleBlackTranslucent; 
toolbar.items = [NSArray arrayWithObjects: 
         [[UIBarButtonItem alloc]initWithTitle:@"Cancel" style:UIBarButtonItemStyleBordered target:self action:@selector(cancelButtonTapped)], 
         [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil], 
         [[UIBarButtonItem alloc]initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:self action:@selector(doneButtonTapped)], 
         nil]; 
[toolbar sizeToFit]; 
self.textField.inputAccessoryView = toolbar; 

これが役に立ちます。

+0

申し訳ありませんが、それは動作しません。 – Dongqing

+0

このコードを使用するときに直面する問題は何ですか? – atulkhatri

+0

私はあなたのコードを使用して、問題も発生しました。 – Dongqing

関連する問題