Рамка кнопки панели навигации не устанавливается при открытии приложения из фона - PullRequest
0 голосов
/ 28 февраля 2012

В моем приложении я использую пользовательскую панель навигации и добавляю элемент кнопки панели, т.е. кнопку возврата в контроллере навигации.Теперь моя проблема заключается в том, что когда я закрываю свое приложение, а затем снова открываю приложение из фона, то рамка кнопки «Назад» поднимается вверх от исходного размера.Пожалуйста, предложите мне способ сделать это.

вот мой код:

                  [self.navigationController.navigationBar setHidden:NO];

if([self isPad])
{
    if([self isPadPortrait]){
        UIImage *gradientImage1 = [[UIImage imageNamed:@"navigationbar_ipadPortrait.png"]
                                   resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
        [self.navigationController.navigationBar setBackgroundImage:gradientImage1 forBarMetrics:UIBarMetricsDefault];


        [self.navigationController.navigationBar setFrame:CGRectMake(0, 0, 768, 61)];

    }
    else if([self isPadLandscape]){

        UIImage *gradientImage2 = [[UIImage imageNamed:@"navigationbar_ipadLandscape.png"]
                                   resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
        [self.navigationController.navigationBar setBackgroundImage:gradientImage2 forBarMetrics:UIBarMetricsDefault];

        [self.navigationController.navigationBar setFrame:CGRectMake(0, 0, 1024, 61)];
    }

}
else{

    UIImage *gradientImage3 = [[UIImage imageNamed:@"navigationBarReady.png"]
                               resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];


    [self.navigationController.navigationBar setBackgroundImage:gradientImage3 forBarMetrics:UIBarMetricsDefault];



    [self.navigationController.navigationBar setFrame:CGRectMake(0, 0, 320, 61)];


}
btnBack=[UIButton buttonWithType:UIButtonTypeCustom];
[btnBack addTarget:self action:@selector(btnBackPressed:) forControlEvents:UIControlEventTouchUpInside];
if([self isPad]){
    if([self isPadPortrait]){
        [btnBack setFrame:CGRectMake(0, 0, 150,44)];
    }else if([self isPadLandscape]){
        [btnBack setFrame:CGRectMake(-5, 0, 150,44)];
    }

}else{
    [btnBack setFrame:CGRectMake(0, 0, 51,41)];
}
backModifiedView=[[UIView alloc] initWithFrame:btnBack.frame];
if([self isPad]){

    [btnBack setImage:[UIImage imageNamed:@"btnBackIpad.png"] forState:UIControlStateNormal];

    [btnBack setFrame:CGRectMake(btnBack.frame.origin.x-15, btnBack.frame.origin.y, btnBack.frame.size.width, btnBack.frame.size.height)];

}
else{
    [btnBack setImage:[UIImage imageNamed:@"btnBack.png"] forState:UIControlStateNormal];

      [btnBack setFrame:CGRectMake(btnBack.frame.origin.x, btnBack.frame.origin.y-8, btnBack.frame.size.width, btnBack.frame.size.height)];
}
[backModifiedView addSubview:btnBack];
UIBarButtonItem *bbiLeft=[[UIBarButtonItem alloc] initWithCustomView:backModifiedView];

self.navigationItem.leftBarButtonItem=bbiLeft;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...