- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
有一个 View_A (UICollectionViewController
&UICollectionViewCell
) 和 View_B (UIViewController
)。当我使用 StoryBoard
中的 Segue
触摸 View_A 中的一个单元格时,我想切换到 View_B。
在 StoryBoard
中,我将 View_A 和 View_B 连接到标识符为 SegueToView_B
的 Push Segue
。
switchViews 的功能运行良好。
有了 Push Segue
,我不需要添加 BackButton (NavigationItem
) 来返回 View_A,因为有一个“NavigationItem”由系统自动装箱。我尝试了其他类型的转场,例如 Modal
、Popover
,并且 NavigationItem
不是自动创建的。我想问为什么?
我想为系统自动创建的那个NavigationItem
设置特定的颜色,而不是默认的蓝色,但我没找到。之后,我只是在 prepareForSegue()
中设置了颜色,但它不起作用。请告诉如何设置它的具体颜色?
override func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) {
self.collectionView?.setPresenting(true, animated: true, completion: nil)
let delegate = UIApplication.sharedApplication().delegate as! AppDelegate
self.selectedCard = delegate.otherCards[indexPath.row]
self.performSegueWithIdentifier("SegueToView_B", sender: self)
}
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if let identifier = segue.identifier {
if identifier == "SegueToView_B" {
let myOtherCardViewController = segue.destinationViewController as? View_BViewController
myOtherCardViewController!.otherCard = self.selectedCard
myOtherCardViewController!.navigationItem.backBarButtonItem?.tintColor = UIColor.whiteColor() // Failed to work!!!
myOtherCardViewController?.navigationItem.leftBarButtonItem?.tintColor = UIColor.whiteColor() // Failed to work, too!!!
}
}
}
感谢您的帮助。
伊桑·乔
最佳答案
为该导航栏设置 tintColor
:
myOtherCardViewController.navigationBar.tintColor = .whiteColor()
为什么使用Modal或PopOver时没有Navigationbar?因为这就是 Modal 和 Popover 的工作方式!您必须为与模态转场连接的 View 创建另一个导航 Controller ,如下所示:
我使用的另一种技术是,创建单个 NavigationController 类,并设置所有需要的属性(颜色、字体等),然后将 Storyboard 中的所有 NavigationController 链接到该 NavigationController 类。
有了它,您就不必重新配置每个 NavigationController。
关于ios - 无法设置 NavigationItem 的 TintColor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29959821/
只是好奇,为什么设置 self.navigationItem = ... 有效,但 self.navigationController.navigationItem 失败了?这同样适用于 self.t
我的 NavigationItem 中心有一个 UISegmentedControl。当权限较少的用户登录应用程序时,应该隐藏 segmentedControl,因此显示导航项的标题而不是它。 我尝试
我的应用程序有 2 个选项卡( tabA 和 tabB ),基于我设置的位置 navigationItem.titleView的 tabB 到 UIImageView当- viewWillAppear
self.navigationController.navigationItem 和 self.navigationItem 有什么区别?我在整个应用程序中使用 UINavigationControl
我正在做一个复制 Twitter 的 iOS 应用程序的教程。 我的左边有一个 BarButtonItem,中间有一个 ImageView,右边有两个 BarButtonItem 的数组。如果数组只填
我对使用 self.navigationItem.rightBarButtonItem 和 self.navigationController.navigationItem.rightBarButto
我想使用navigationItem.title的字体,因为我在titleView中插入一个按钮,并且这个按钮有“ABC”,但是这个“ABC”必须指定字体。我需要这种字体与系统的 navigation
我失去了在我的自定义导航 Controller 上设置右键的想法。 我的类扩展了 UINavigationCOntroller。我清理了所有内容,然后在 viewDidAppear 上运行以下代码。
VC1 嵌入在 NavigationController 中。在 VC1 中,我正在设置一个新的 VC2 并将其嵌入到一个新的 NavigationController 中。我想在设置 VC2 时添加
我有一个 UINavigationItem 我正在尝试显示一个 UIBarButtonItem。 现在的问题是我正确地添加了它们,它们正常工作并且 100% 正常工作。 但它们没有显示在 UINavi
我有一个从选项卡栏 Controller 调用的 View ,我想要一个 leftBarButtonItem、一个带有 Logo 的 topItem 和一个 rightBarButtonItem。 在
我通过 ActionBar NavigationMode (DROP_DOWN_LIST) 为 Android 3+ 设备实现了 View 导航。 getActionBar().setNa
我正在尝试为 UINavigationController 堆栈中的推送 VC 集设置返回按钮。我使用以下代码,但它不起作用 - 我仍然得到以前的 VC 名称显示为后退按钮标题。 -(void)vie
我已将 View 推送到 NavigationController 堆栈,我位于 ViewLoaded 中,并且发现 NavigationItem.BackBarButtonItem 为 null。这
我使用此代码更改 NavigationItem 的标题: self.navigationItem.title = @"My Name is ABC"; 如何更改字体大小和字体? 最佳答案 示例代码:
将 Controller 推送到导航堆栈时,我执行: self.navigationItem.title = ""; 因为我不希望下一个 View 在后退按钮上显示前一个 Controller 的名称
我想使用 UITextField 创建一个搜索栏。我尝试将 NavigationItem 的 TitleView 设置为文本字段并设置相应的约束。但导航栏中央的文本字段仍然很短。如何让文本框填满整个导
是否有任何文本属性(如行高)或任何其他有助于 UINavigationItem 标题垂直居中的功能?设置自定义字体后比标准字体高。 最佳答案 当然UINavigationBar上有个方法叫 - (vo
我在 UITableViewController 上设置导航按钮时遇到问题!该 Controller 位于 UINavigationController 内。 我有以下 View Controller
如果 viewController 位于 navigationStack 中(可能位于堆栈顶部), 它会自动拥有 self.navigationItem 吗? 我不断看到 self.navigatio
我是一名优秀的程序员,十分优秀!