将分页添加到UINavigationbar的右侧

时间:2012-10-11 08:45:13

标签: iphone objective-c ios

设计师要求我为项目中的UINavigation栏添加分页,其目标是ios4.3 +。

我知道您可以在导航栏的右侧添加两个按钮,如本博客中所述:enter link description here

但要获得设计师要求的外观 enter image description here

我是否需要将图像添加到我的按钮或者这是某种原生控件(Special UISegmentedControl?)我以前没见过?或者只有2个带有背景图像的自定义按钮。

谢谢, -code

2 个答案:

答案 0 :(得分:0)

我使用分段控件实现了相同的功能,没有定义带图像的自定义按钮。我不使用箭头添加图像,而是使用相应的Unicode字符,并用它们实例化分段控件。

    UISegmentedControl *toggleSegmentedControl = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:@"\u25B2",@"\u25BC",nil]];

UIBarButtonItem *toggleSegmentedControlBarItem = [[UIBarButtonItem alloc] initWithCustomView:toggleSegmentedControl];
self.navigationItem.leftBarButtonItem = toggleSegmentedControlBarItem; 

然后你的leftBarButtonItem被分段控件替换。

enter image description here

答案 1 :(得分:-1)

如果我理解,你想在每个UIBarButtonItem中放置一个图像并设置按钮状态(点击或正常情况时)。如果是,您可以尝试此代码

`UIImage *buttonImageNormal = [UIImage imageNamed:@"image.png"];
UIImage *buttonImagePressed = [UIImage imageNamed:@"imagepressed.png"];
UIButton *myButton = [UIButton buttonWithType:UIButtonTypeCustom];
[myButton setImage:buttonImage forState:UIControlStateNormal];
[myButton setImage:buttonImage forState: UIControlStateHighlighted];


UIBarButtonItem aBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:myButton];

// Create and Set the Target and Action for aButton
[myButton addTarget:self action:@selector(myButtonClicked:) forControlEvents:UIControlEventTouchUpInside];`