Я разработал следующий UINavigationBar, однако я немного смущен, можно ли добавить segmentControl, как показано ниже? Какой был бы лучший способ достичь такого?Swift extend navigationBar height и добавить segmentControl
0
A
ответ
3
Расширение UInavigation бар. (Извините, не отвечает на вопрос Питера.)
В Xcode, File - New - Swift File - назовите класс.
import UIKit
import Foundation
extension UINavigationController
{
func makeBlackNavigationbar(){
print("black navigation")
navigationController?.navigationBarHidden = false
}
}
extension UINavigationBar
{
func makeBlackNavigationBar()
{
barTintColor = UIColor.blackColor()
let titleDict: NSDictionary = [NSForegroundColorAttributeName: UIColor.whiteColor()]
titleTextAttributes = titleDict as [NSObject : AnyObject]
}
}
Он может быть реализован в любом месте проекта.
self.navigationController?.makeBlackNavigationbar()
self.navigationController?.navigationBar.makeBlackNavigationBar()
0
Вы можете имитировать ваше требование следующим образом:
-(void) segmentAction: (UISegmentedControl *) segmentedControl
{
// Update the label with the segment number
NSString *segmentNumber = [NSString stringWithFormat:@"%0d",
segmentedControl.selectedSegmentIndex + 1];
[(UITextView *)self.view setText:segmentNumber];
}
- (void) loadView
{
[super loadView];
// Create a central text view
UITextView *textView = [[UITextView alloc]
initWithFrame:self.view.frame];
textView.font = [UIFont fontWithName:@"Futura" size:96.0f];
textView.textAlignment = UITextAlignmentCenter;
self.view = textView;
// Create the segmented control
NSArray *buttonNames = [NSArray arrayWithObjects:
@"Recent", @"Popular", @"My", nil];
UISegmentedControl* segmentedControl = [[UISegmentedControl alloc]
initWithItems:buttonNames];
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
segmentedControl.momentary = YES;
[segmentedControl addTarget:self action:@selector(segmentAction:)
forControlEvents:UIControlEventValueChanged];
// Add it to the navigation bar
self.navigationItem.titleView = segmentedControl;
}
или есть другой подход следующим образом:
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:
[NSArray arrayWithObjects:
[NSString stringWithString:NSLocalizedString(@"Recent", @"")],
[NSString stringWithString:NSLocalizedString(@"Popular", @"")],
[NSString stringWithString:NSLocalizedString(@"My", @"")],
nil]];
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
segmentedControl.tintColor = [UIColor clearColor];
[segmentedControl setSelectedSegmentIndex:0];
[segmentedControl addTarget:self action:@selector(changeSegment:)
forControlEvents:UIControlEventValueChanged];
[segmentedControl setFrame:[self.navigationController.toolbar bounds]];
[self.navigationController.toolbar addSubview:segmentedControl];
Смежные вопросы
- 1. xamarin.forms.ios navigationbar renderer change height
- 2. Как добавить SearchController.searchBar под navigationBar (UITableView) swift
- 3. iOS это возможно, наблюдатель изменяет navigationBar height?
- 4. Swift LongPressGestureRecognizer on NavigationBar
- 5. Swift Navigationbar и цвет фонового изображения
- 6. Пустое пространство между SearchBar и NavigationBar - Swift
- 7. Xamarin.Forms Добавить NavigationBar
- 8. Добавить UICollectionView в NavigationBar
- 9. Как добавить загруженный пользовательский шрифт в заголовок navigationBar в Swift?
- 10. Animate PickerView Height Swift
- 11. Добавить изображение за NavigationBar и TabBar
- 12. добавление searchBar to navigationBar в swift
- 13. Extend SqlException и добавить к нему объявление
- 14. Swift set width и height subclass UIView
- 15. Невозможно добавить NavigationBar на TabViewController
- 16. Добавить navigationBar в существующий проект
- 17. Android VideoView и NavigationBar
- 18. TableViewCell с SegmentControl
- 19. Segmentcontrol Цвет при нагрузке?
- 20. Функция Weird Segmentcontrol происходит
- 21. NavigationBar не отображается на TableviewController в swift
- 22. NavigationBar не отображается (View Controller): Swift
- 23. Convert удалить navigationBar border to swift
- 24. tableView change height in swift
- 25. Swift 3 Extend Range of Specific Type
- 26. Write extend file attributes swift example
- 27. iOS Swift navigationBar и tabBar одинаковый hex, но другой цвет?
- 28. TabBar Controller и NavigationBar
- 29. Android - WebViewFragment и NavigationBar
- 30. UiPageController и NavigationBar