我一直在尝试通过以下方式复制“发送到...”页面底部的Snapchat的蓝色弹出矩形提示:1)使用UIToolbar显示文本的IB UILabel,以及2)通过UIToolbar(frame: CGRectMake(x,y,width,height))编程。在界面构建器中,我无法将标签拖动到工具栏上方,并且一直在尝试使用程序设计路线。

在Swift中复制该工具栏格式的最佳方法是什么?我的视图控制器将与Snapchat的非常相似。单击某人的名字,工具栏从底部开始以动画方式显示,并且收件人的数组显示在工具栏上。

我已经发布了Snapchat示例的图片,但是我是S.O的新手,还没有销售代表。 :/ 提前致谢!

编辑:这是我所指的链接。最底部的蓝色发送提示。仅在选择1个或多个用户时显示。

最佳答案

尝试执行此操作以在工具栏上显示标签。

NSMutableArray *items = [[self.toolbar items] mutableCopy];

UIBarButtonItem *spacer = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
[items addObject:spacer];


self.titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(0.0 , 11.0f, self.view.frame.size.width, 21.0f)];
[self.titleLabel setFont:[UIFont fontWithName:@"Helvetica-Bold" size:18]];
[self.titleLabel setBackgroundColor:[UIColor clearColor]];
[self.titleLabel setTextColor:[UIColor colorWithRed:157.0/255.0 green:157.0/255.0 blue:157.0/255.0 alpha:1.0]];
[self.titleLabel setText:@"Title"];
[self.titleLabel setTextAlignment:NSTextAlignmentCenter];

UIBarButtonItem *spacer2 = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
[items addObject:spacer2];


UIBarButtonItem *title = [[UIBarButtonItem alloc]    initWithCustomView:self.titleLabel];
[items addObject:title];

[self.toolbar setItems:items animated:YES];

要么

用它...
UIToolbar *toolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 320, 44)];
[self.view addSubview:toolbar];

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 100, 44)];
label.backgroundColor = [UIColor clearColor];

UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithCustomView:label];
toolbar.items = [NSArray arrayWithObject:item];

label.text = @"Hello World";

关于ios - 如何将UILabel添加到UIToolbar?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30180060/

10-13 09:27