相关疑难解决方法(0)

尝试在iOS中处理"后退"导航按钮操作

我需要检测用户何时点击导航栏上的"后退"按钮,以便在发生这种情况时执行某些操作.我正在尝试手动将动作设置为这样的按钮,这样:

[self.navigationItem.backBarButtonItem setAction:@selector(performBackNavigation:)];

- (void)performBackNavigation:(id)sender
{
   // Do operations

   [self.navigationController popViewControllerAnimated:NO];
}
Run Code Online (Sandbox Code Playgroud)

我首先将该代码放在视图控制器本身中,但我发现它self.navigationItem.backBarButtonItem似乎是nil,所以我将相同的代码移动到父视图控制器,后者将前者推送到导航堆栈.但我无法让它发挥作用.我已经阅读了一些关于这个问题的帖子,其中一些人说需要在父视图控制器上设置选择器,但对我来说它无论如何都不起作用......我怎么可能做错了?

谢谢

selector uinavigationbar uinavigationcontroller ios

71
推荐指数
5
解决办法
12万
查看次数

来自UIButtons的自定义UIBarButtonItems带有自定义图像 - 是否可以使点击目标更大?

我正在制作UIBarButtons如下:

// Create "back" UIBarButtonItem
UIButton *backButton = [UIButton buttonWithType:UIButtonTypeCustom];
backButton.frame = CGRectMake(0, 0, 28, 17);
[backButton addTarget:self action:@selector(backButtonTapped) forControlEvents:UIControlEventTouchUpInside];
backButton.showsTouchWhenHighlighted = YES;

UIImage *backButtonImage = [UIImage imageNamed:@"back-button.png"];
[backButton setBackgroundImage:backButtonImage forState:UIControlStateNormal];

UIBarButtonItem *backBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:backButton];

[toolBarItems addObject:backBarButtonItem];
Run Code Online (Sandbox Code Playgroud)

但是,水龙头目标很小.更确切地说,它们是自定义图像的大小.(再次,这很小.)有没有办法增加他们的水龙头目标的大小?

(注意:更改UIButtons的框架属性只会拉伸图像.)

objective-c uibutton uitoolbar uibarbuttonitem ios

15
推荐指数
2
解决办法
2万
查看次数