左侧菜单与状态栏重叠

时间:2014-09-02 06:25:38

标签: objective-c ios7 ios7-statusbar

基本上,当我点击左侧菜单按钮时会发生这种情况。

http://i.stack.imgur.com/g7uq6.png

我希望它显示在状态栏下方,而不是重叠它。

以下是代码:

HomeViewController.m

-(void)menuBarButtonItemClick{

    mJUserAccountMenuViewController = nil;
    mJUserAccountMenuViewController = [[MJUserAccountMenuViewController alloc] initWithNibName:@"MJUserAccountMenuViewController" bundle:nil];
    mJUserAccountMenuViewController.delegate = self;
    [self presentPopupViewController:mJUserAccountMenuViewController animationType:MJPopupViewAnimationSlideLeftRight];
}

mJUSerAccountMenuViewController.m

- (void)viewDidLoad
{
    [super viewDidLoad];

    leftMenuArrayy = [StaticDataCollection getSharedInstance].accountMenuArray;

    backTOHomelabl.font = FONT_APP_DEFAULT_FONT;
    backTOHomelabl.textColor = COLOR_WHITE_COLOR;

    if (IS_IPHONE_5_SCREEN) {
        [self.view setFrame:CGRectMake(0, 0, 250, 568)];
    } else {
        [self.view setFrame:CGRectMake(0, 0, 250, 480)];
    }
}

1 个答案:

答案 0 :(得分:0)

如果您使用storyboardAutoLayout,则可以将菜单顶部设为等于top layout guide

如果您使用的是xib,则可以将iOS 6/7 Delta设置为正或负y偏移20(状态栏的高度)。

如果按代码设置布局,则必须检查iOS版本。例如:

if([[[UIDevice currentDevice] systemVersion] integerValue] >= 7)
{
    // set the subviews' offset +20px(statusBar's height)
}