谢谢!
答案 0 :(得分:6)
要使用界面构建器在工具栏中创建分段控制元素,可以使用以下提示
1)在导航控制器中创建分段控制栏按钮项:
2)将栏按钮项拖到导航项
3)然后你应该得到以下结构
4)现在,您可以选择分段控制来设置其属性
答案 1 :(得分:3)
1 - 以编程方式执行。首先需要为UIToolbar分配一个框架,然后可以在其中添加元素(segmentedControl)。我建议使用UIBarButtonItems
,基本上是相同的。
要坚持到底部,尝试这样做:
#define SCREEN_FRAME [[UIScreen mainScreen] applicationFrame]
CGRect frame = CGRectMake(0, [[UIScreen mainScreen] bounds].size.height - 44, [[UIScreen mainScreen] bounds].size.width, 44);
UIToolbar *toolBar = [[UIToolbar alloc]initWithFrame:frame];
toolBar.frame = CGRectMake(0,self.view.frame.size.height-toolBar.frame.size.height,SCREEN_FRAME.size.width,toolBar.frame.size.height);
//Setting up the items
UIBarButtonItem *first = [[[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"image.png"] style:UIBarButtonItemStylePlain target:self action:@selector(yourAction:)] autorelease];
UIBarButtonItem *second = [[[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"image.png"] style:UIBarButtonItemStylePlain target:self action:@selector(yourAction:)] autorelease];
//Creating an array with the items
NSArray *items = [NSArray arrayWithObjects:first,second, nil];
//Assigning the array to the toolBar
[toolBar setItems: items];
然后你可以用
设置它的样式mytoolbar.barStyle = UIBarStyleBlack;
2 - 与上述相同,框架。
3 - 您需要将navigationController样式设置为黑色
使用self.navigationController.navigationBar.style = UIBarStyleBlack
; ,或在IB中选择按钮,并从Inspector中将Tint或Style设置为您想要的任何内容。
同时检查this问题
答案 2 :(得分:1)
我认为这里有一个导航视图控制器。他们有自己的工具栏,但它是隐藏的和空的。您看到的工具栏只是模拟工具栏,目的是让您编辑UI。
为了使用storyboard执行此操作,请不要将分段控件添加到模拟工具栏,创建新工具栏并将其添加到控制器中可用的视图树(作为表视图的同级)并创建IBOutlet引用它。然后在viewDidLoad方法中将工具栏中的项目分配给视图控制器已创建的工具栏。
在这个例子中,我在视图控制器上创建了一个名为(cunningly)工具栏的属性:
@property (nonatomic, retain) IBOutlet UIToolbar toolbar;
在我的视图控制器的实现中,我手动分配工具栏项目:
-(void)viewDidAppear:(BOOL)animated
{
[self setToolbarItems:self.toolbar.items animated:NO];
[self.navigationController setToolbarHidden:NO animated:YES];
}
弹出视图控制器时,您需要隐藏工具栏,例如在调用视图控制器中:
-(void)viewWillAppear:(BOOL)animated
{
[self.navigationController setToolbarHidden:YES animated:YES];
}
当然,假设你想隐藏它。
答案 3 :(得分:0)
我是通过将UISegmentedController放在Bar Button Item中来完成的。
将工具栏添加到UINavigationController窗口,然后在ViewController屏幕上启用此工具栏的显示。
将一个条形按钮拖到ViewController屏幕上的工具栏中,然后将UISegmentedController拖入其中(将按钮调整为屏幕的整个宽度)
要将它全部连接起来,按住Ctrl键从UISegmentedController拖动到相应的.h文件,从“引用插座”拖动到黄色视图控制器图标(使用相同的变量名称),然后从“ValueChanged”拖动到黄色图标(在控制器上选择要在新选择上调用的方法)。
这一切似乎都按预期工作。 (如果您无法在控制器上选择一个段来设置初始值,那么您没有按照上述说明连接引用插座。这让我感到困惑了一段时间。)