2015-05-12 2 views
3

Я пытался воспроизвести синий прямоугольный прямоугольник Snapchat в нижней части страницы «Отправить ...» через 1) IB UIToolbar с UILabel для отображения текста и 2) программно через UIToolbar(frame: CGRectMake(x,y,width,height)). В построителе интерфейса я не могу перетащить ярлык поверх панели инструментов, и я боролся с программным маршрутом.Как добавить UILabel в UIToolbar?

Каков наилучший способ репликации форматирования этой панели инструментов в Swift? Мой контроллер будет очень похож на Snapchat's. Нажмите имя пользователя, и панель инструментов появится анимированно снизу, а массив получателей отобразится на панели инструментов.

Я бы опубликовал фотографию примера Snapchat, но я новичок в S.O и у меня пока нет репутации. :/ Заранее спасибо!

EDIT: Вот ссылка на то, о чем я говорю. Синяя подсказка отправки в самом низу. Он появляется только при выборе 1 или более пользователей. screenshot

+0

Делитесь ожидаемые выходные скриншоты. –

+0

Спасибо @sasquatch. У меня даже нет достаточной репутации для публикации скриншотов. – chicobermuda

+0

, если мой ответ поможет вам отметить его как принятый. –

ответ

-1

Попробуйте это, чтобы показать ярлык на ToolBar.

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"; 
Смежные вопросы