在Swift中垂直居中的IndicatorImage
发布时间:2020-12-14 05:20:40 所属栏目:百科 来源:网络整理
导读:我使用以下代码将自定义图像放入backIndicator Image中: var backButton = UIImage(named: "locationbar_back")?.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal)self.navigationController!.navigationBar.backIndicatorImage = backButtons
我使用以下代码将自定义图像放入backIndicator
Image中:
var backButton = UIImage(named: "locationbar_back")?.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal) self.navigationController!.navigationBar.backIndicatorImage = backButton self.navigationController!.navigationBar.backIndicatorTransitionMaskImage = backButton 图像略高于标准图形,所以我想要垂直居中. 我已经尝试在导航栏中找到图像(不是很优雅)使用这个代码(任何更好的建议欢迎): for myview in self.navigationController!.navigationBar.subviews as [UIView] { if myview.frame.width == 17 //need a better way of identifying object { var newFrame = myview.frame newFrame.origin.y = 6.0 myview.frame = newFrame } } 令人沮丧的是,图像暂时在正确的地方出现,然后被恢复到原来的位置. 我试过这样说: > viewDidLoad 没有快乐 有没有任何建议吗?
您可以通过下一个代码直接更改您的UIImage位置.
原产地可以手动设置: ... var backButtonImage = UIImage(named: "backButtonImage")! backButtonImage = changeImagePosition(backButtonImage,origin: CGPointMake(0,0)) navigationController!.navigationBar.backIndicatorImage = backButtonImage navigationController!.navigationBar.backIndicatorTransitionMaskImage = backButtonImage ... func changeImagePosition(image: UIImage,origin: CGPoint) -> UIImage { let size = image.size UIGraphicsBeginImageContextWithOptions(size,false,2) image.drawInRect(CGRectMake(origin.x,origin.y,size.width,size.height)) let newImage = UIGraphicsGetImageFromCurrentImageContext() UIGraphicsEndImageContext() return newImage } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |