我们如何添加公共UIButton或UIBarButton或任何UI对象,以便它出现在应用程序的所有导航栏中。
答案 0 :(得分:0)
The below code will work perfectly;
UIImage* image3 = [UIImage imageNamed:@"info.png"];
CGRect frameimg = CGRectMake(0, 0, image3.size.width*4, image3.size.height);
UIButton *someButton = [[UIButton alloc] initWithFrame:frameimg];
//[someButton setBackgroundImage:image3 forState:UIControlStateNormal];
[someButton setTitle:@"Category" forState:UIControlStateNormal];
[someButton addTarget:self action:@selector(popUpPicker:)
forControlEvents:UIControlEventTouchUpInside];
[someButton setShowsTouchWhenHighlighted:YES];
UIBarButtonItem *mailbutton =[[UIBarButtonItem alloc] initWithCustomView:someButton];
self.navigationItem.rightBarButtonItem=mailbutton;
self.navigationItem.leftBarButtonItem = nil;
答案 1 :(得分:0)
对于这些,您必须使用类别,然后您必须在每个视图控制器中调用它以获得每个navigationabr按钮操作的一个代码。
答案 2 :(得分:0)
没有神奇的公式。无论如何,您必须将相同的“UIButton或UIBarButton或任何UI对象”添加到每个UIViewController的navigationItem
,其视图将显示在此导航控制器的导航栏下。
您可以通过在一个地方创建此对象来减少重复代码的数量,但是可以说
self.navigationItem.rightBarButtonItem = thisItem
或者你想对条形按钮项做什么,必须为每个视图控制器单独和明确地执行。