0

UIViewController バックボタンの背景を削除したい。

どうやってやるの?

次のコードを試しました

backButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"back.png"] landscapeImagePhone:nil style:UIBarButtonSystemItemCancel target:self action:nil];
    [backButton setBackgroundImage:nil forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
self.navigationItem.backBarButtonItem = backButton;

しかし、うまくいきませんでした!

4

3 に答える 3

1

UINavigationBarの戻るボタンの画像を変更しようとしないでください。それはデフォルトで付属しているため、不可能です。

むしろ、別のカスタマイズUIButtonUINavigationBarアイテムとして配置してから、必要に応じてカスタマイズできます。

UIButton *btnItem = [[UIButton alloc]initWithFrame:CGRectMake(0, 0, 30, 30)];
[btnItem setTitle:@"title" forState:UIControlStateNormal];
[btnItem addTarget:self action:@selector(btnItem_click:) forControlEvents:UIControlEventTouchUpInside];
self.topItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithCustomView:btnItem];
于 2013-10-08T10:41:03.860 に答える
0

このコードは私のために働いた

UIImage *backButtonImage = [UIImage imageNamed:@"back.png"];
UIButton *backButton = [UIButton buttonWithType:UIButtonTypeCustom];
[backButton addTarget:self action:@selector(backButtonPressed) forControlEvents:UIControlEventTouchUpInside];
[backButton setBackgroundImage:backButtonImage forState:UIControlStateNormal];
[backButton setFrame:CGRectMake(0, 0, 30, 30)];
UIBarButtonItem *backBarButton = [[UIBarButtonItem alloc] initWithCustomView:backButton];
[backBarButton setAction:@selector(backButtonPressed)];
self.navigationItem.leftBarButtonItem = backBarButton;
-(void)backButtonPressed{
    [self.navigationController popViewControllerAnimated:YES];
}
于 2013-10-09T12:54:18.363 に答える