【问题标题】:Left menu overlaps status bar左侧菜单与状态栏重叠
【发布时间】:2014-09-02 06:25:38
【问题描述】:

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

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)];
    }
}

【问题讨论】:

    标签: objective-c ios7 ios7-statusbar


    【解决方案1】:

    如果你使用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)
    }
    

    【讨论】:

    • 谢谢。我设法通过更改子视图偏移值来修复它。
    猜你喜欢
    • 1970-01-01
    • 2015-09-27
    • 1970-01-01
    • 1970-01-01
    • 2013-02-04
    • 2011-02-20
    • 2016-03-03
    • 2023-04-09
    • 1970-01-01
    相关资源
    最近更新 更多