草庐IT

UINavigationBar

全部标签

objective-c - Navigation Bar延迟更新barTintColor iOS 10

上下文:假设我们有一个NavigationController和2个viewController。ViewControllerA有一个蓝色的导航栏,而ViewControllerB有一个绿色的。我是这样设置的:overridefuncviewWillAppear(_animated:Bool){self.navigationController?.navigationBar.barTintColor=UIColor.blue//GreenifViewControllerB}当我从A到B时它运行良好,但当我返回时,导航栏模板会在之后更新。就像它是在viewDidAppear中设置的一样。

ios - 如何在 UINavigationBar 标题上设置字距调整(字符间距)-Swift 或 Objective-C

我的导航栏大部分是根据我的喜好定制的,但我正在尝试使用NSKernAttributeName增加字距调整。我正在使用外观代理将导航​​栏设置为白色文本和自定义字体,但是当我尝试添加字距调整时它没有生效。[[UINavigationBarappearance]setTitleTextAttributes:[NSDictionarydictionaryWithObjectsAndKeys:[UIColorwhiteColor],NSForegroundColorAttributeName,[UIFontfontWithName:@"HelveticaNeue-Light"size:20.0

ios - 如何在 UINavigationBar 标题上设置字距调整(字符间距)-Swift 或 Objective-C

我的导航栏大部分是根据我的喜好定制的,但我正在尝试使用NSKernAttributeName增加字距调整。我正在使用外观代理将导航​​栏设置为白色文本和自定义字体,但是当我尝试添加字距调整时它没有生效。[[UINavigationBarappearance]setTitleTextAttributes:[NSDictionarydictionaryWithObjectsAndKeys:[UIColorwhiteColor],NSForegroundColorAttributeName,[UIFontfontWithName:@"HelveticaNeue-Light"size:20.0

Swift 导航栏按钮和标题不出现

我想在我的应用程序顶部创建一个导航栏。我创建了一个NavigationController->TabBarController->NavigationController->TableController我在右上角拖了一个BarButtonItem。我双击了TableController中间的标题并写了一段文字。我还在我的Controller的viewDidLoad()中使用这段代码进行了尝试:self.navigationController.navigationBar.topItem.title="sometitle"self.navigationItem.setRightBarB

Swift 导航栏按钮和标题不出现

我想在我的应用程序顶部创建一个导航栏。我创建了一个NavigationController->TabBarController->NavigationController->TableController我在右上角拖了一个BarButtonItem。我双击了TableController中间的标题并写了一段文字。我还在我的Controller的viewDidLoad()中使用这段代码进行了尝试:self.navigationController.navigationBar.topItem.title="sometitle"self.navigationItem.setRightBarB

ios - 弹出 View Controller 时更改导航栏颜色

我有三个ViewController。在第一个ViewController(FirstVC)中,导航栏的栏色调颜色为clearColor,栏本身是半透明的。当我点击某些东西时,我会推送到导航栏需要不透明的SecondVC。所以我将barTintColor设置为某个颜色值并将isTranslucent设置为false。当我从SecondVC推送到ThirdVC时,导航栏再次需要是半透明的。当我弹出ThirdVC并返回到SecondVC时,问题就出现了。导航栏显示为透明一秒钟,然后根据需要变为不透明。我无法理解延迟的原因。以下方法是从SecondVC的viewWillAppear()调用的

ios - 弹出 View Controller 时更改导航栏颜色

我有三个ViewController。在第一个ViewController(FirstVC)中,导航栏的栏色调颜色为clearColor,栏本身是半透明的。当我点击某些东西时,我会推送到导航栏需要不透明的SecondVC。所以我将barTintColor设置为某个颜色值并将isTranslucent设置为false。当我从SecondVC推送到ThirdVC时,导航栏再次需要是半透明的。当我弹出ThirdVC并返回到SecondVC时,问题就出现了。导航栏显示为透明一秒钟,然后根据需要变为不透明。我无法理解延迟的原因。以下方法是从SecondVC的viewWillAppear()调用的

ios - 使导航栏标题可快速点击

我想让navigationbar标题可以点击。当用户点击它时,它应该执行一个segue。但我不知道该怎么做。我尝试了以下方法来获取标题并将Tap手势应用于它。varsubviews=self.navigationController?.navigationBar.subviewsifletsubviews=subviews{//Bettercheckforarraylengthbeforeaccessingtothe1stelementvarsubview=subviews[0]}但它给我错误VariablesubviewinferredtohavetypeAvyObject,whic

ios - 使导航栏标题可快速点击

我想让navigationbar标题可以点击。当用户点击它时,它应该执行一个segue。但我不知道该怎么做。我尝试了以下方法来获取标题并将Tap手势应用于它。varsubviews=self.navigationController?.navigationBar.subviewsifletsubviews=subviews{//Bettercheckforarraylengthbeforeaccessingtothe1stelementvarsubview=subviews[0]}但它给我错误VariablesubviewinferredtohavetypeAvyObject,whic

swift - 更改 UINavigationbar 中元素的色调颜色(iOS 11)

我一直在使用这段代码来改变导航栏中元素的色调:UINavigationBar.appearance().tintColor=theme.labelColor但是,这在iOS11中不再有效。在iOS11之前,导航栏中的按钮是UINavigationButton,但在iOS11中它们已更改为_UIModernBarButton。我可以使用UIButton.appearance().tintcolor更改它们的色调,但这会改变每个按钮的颜色。这是一个比较:任何人都知道如何更改导航栏中的按钮色调颜色?2017年1月9日更新:看起来_UIButtonBarButton具有正确的色调,但_UIMo