更改 Swift 3 中 UIBarButtonItem(图像)的大小

2024-01-27

我正在尝试更改导航栏中某些图标的大小,但我对如何执行此操作有点困惑?到目前为止我的代码是:

func setUpNavBarButtons() {
    let moreButton = UIBarButtonItem (image: UIImage(named:"ic_more_vert_3")?.withRenderingMode(.alwaysOriginal), style: .plain, target: self, action: #selector(handleMore))
    navigationItem.rightBarButtonItems = [moreButton]
    let refreshButton = UIBarButtonItem (image: UIImage(named:"ic_refresh")?.withRenderingMode(.alwaysOriginal), style: .plain, target: self, action: #selector(refreshDataButton))
    navigationItem.leftBarButtonItems = [refreshButton]
}

有什么帮助吗?


我就是这样做的

iOS 10 及以下版本

func setUpMenuButton(){
    let menuBtn = UIButton(type: .custom)
    menuBtn.frame = CGRect(x: 0.0, y: 0.0, width: 20, height: 20)
    menuBtn.setImage(UIImage(named:"menuIcon"), for: .normal)
    menuBtn.addTarget(self, action: #selector(vc.onMenuButtonPressed(_:)), for: UIControlEvents.touchUpInside)

    let menuBarItem = UIBarButtonItem(customView: menuBtn)
    self.navigationItem.leftBarButtonItem = menuBarItem
}

iOS 11 - 导航栏带有自动布局,因此框架设置可能不起作用

func setUpMenuButton(){
    let menuBtn = UIButton(type: .custom)
    menuBtn.frame = CGRect(x: 0.0, y: 0.0, width: 20, height: 20)
    menuBtn.setImage(UIImage(named:"menuIcon"), for: .normal)
    menuBtn.addTarget(self, action: #selector(vc.onMenuButtonPressed(_:)), for: UIControlEvents.touchUpInside)

    let menuBarItem = UIBarButtonItem(customView: menuBtn)
    let currWidth = menuBarItem.customView?.widthAnchor.constraint(equalToConstant: 24)
    currWidth?.isActive = true
    let currHeight = menuBarItem.customView?.heightAnchor.constraint(equalToConstant: 24)
    currHeight?.isActive = true
    self.navigationItem.leftBarButtonItem = menuBarItem
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

更改 Swift 3 中 UIBarButtonItem(图像)的大小 的相关文章

  • iOS Safari Mobile 禁用上一个和下一个选择输入

    上周五我发现了关于此问题的类似问题 但似乎无法再次找到它 如果有人能指出我正确的方向 那就太好了 本质上我在一个页面上有多个选择菜单 第一个在加载时填充 第二个在第一个选择时填充 够简单的 但是 在 iOS 设备中 当您点击选择元素时 它会
  • 使用 NSString 进行 UTF8 解码

    我是 Objective C 新手 尝试使用以下示例将格式错误的 UTF8 编码 NSString 转换为格式良好的字符串苹果文档 http developer apple com library mac documentation Coc
  • 如何开始复杂级别的跨平台移动应用开发? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 为什么performSegueWithIdentifier在viewDidLoad中不起作用?

    我试图在视图控制器上调用 viewDidLoad 后立即触发故事板转场 Segue 附加了一个标识符 当从链接到按钮或其他控件的方法内部调用时 它可以正常工作 但它在 viewDidLoad 内部不起作用 它只是默默地失败了 viewDid
  • AppStore 提交:错误 ITMS-9000:“无效的捆绑结构 - 不允许二进制文件‘MyApp.app/BuildAgent’

    我陷入了以下错误 我根本不明白 错误 ITMS 9000 无效的捆绑结构 不允许使用二进制文件 MyApp app BuildAgent 您的应用程序可能只包含一个可执行文件 当我使用 Xcode 从 Archive 导出到 IPA 时 我
  • 错误域=kAFAssistantErrorDomain 代码=209“(空)”

    我面临着一个问题SFSpeechRecognizer 启动应用程序几秒钟后 我开始收到错误消息 错误域 kAFAssistantErrorDomain 代码 209 空 和 错误 域 kAFAssistantErrorDomain 代码 2
  • 从按钮执行 Segue 时应用程序冻结

    我的故事板中有一个按钮 它呈现一个带有模式序列的视图控制器 每次按下此按钮时 应用程序都会冻结 没有崩溃 也没有错误消息 prepareForSegue被调用 所有应该存在的视图控制器都在代码中prepareForSegue 但它们不会出现
  • iOS:生成pdf时绘制文本时如何设置字体?

    我在ios应用程序中使用drawpdf函数生成pdf 同时调用nsobject类中的drawtext函数 它根据我指定的框架和字符串清楚地绘制文本 我的代码是 void drawText NSString textToDraw inFram
  • 使用未解析的标识符“FlurryAdInterstitial”

    我正在尝试整合Flurry Interstitial Ads使用cocoapods in Swift and Xcode 7 1 1 我正在关注开发人员雅虎网站上的此文档 https developer yahoo com flurry d
  • 在 iPhone 3GS 与 iPhone 4 上为 Mobile Safari 嵌入 HTML5 视频

    我在服务器上的 mp4 文件中有 H 264 AAC 编码的视频 mime 类型的视频 mp4 添加到 Web 服务器 IIS 7 并且我有一个带有视频标签的页面
  • 用户验证 Facebook 后未调用应用程序打开 Url 方法

    我已将 ios 应用程序中的 facebook 升级到 3 0 并使用提供的代码https developers facebook com docs howtos login with facebook using ios sdk http
  • UIViewControllerAnimatedTransitioning:旋转更改后黑屏片段

    我已经创建了一个视图控制器转换 只要我不更改设备方向 一切都正常 图 1 显示了应有的屏幕 然后我切换到下一个视图控制器 在其中更改方向 现在我回到第一个视图控制器并再次切换方向 然后我得到的结果如图 2 所示 出现黑色边框 请不要介意屏幕
  • iOS 7 上 Safari 浏览器的用户代理

    我只想在带有 Safari 浏览器的 iPhone 和 iPod 中打开我的网站 对于 Chrome Dolphin 等任何其他浏览器 它不应该打开 但目前我从几乎所有设备获得相同的用户代理 对于Safari User Agent Stri
  • “预期的 ';'在 Swift 下的顶级声明符之后”

    我正在尝试将所有颜色设置在一个 Swift 文件中 该文件可以在我的整个应用程序中使用 下面的代码会导致 import Foundation import UIKit class DotColors let tsblueColor UICo
  • 如何向标准 UIButton 添加徽章? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 是否可以在标准中添加看起来标准的徽章UIButton 如果不支持半原生 那么实现此目的最简单的方法是什么 示例图片 这是 Sascha
  • 如何在button.addTarget操作中发送多个按钮?斯威夫特3

    如何将button和button2发送到我的pressButton2函数中 当用户触摸按钮2时 我需要更改按钮和按钮2的颜色 当我的 button2 addTarget 看起来像这样时 我收到错误 表达式列表中存在预期表达式 import
  • 如何在代码中编辑约束

    我有一个以 100 开始宽度限制的网页 当用户单击按钮时 我想将约束更改为 200 我试过这个 NSLayoutConstraint constrain NSLayoutConstraint constraintWithItem self
  • UIView 圆角 - Swift 2.0?

    我会尝试将一些项目更新到 Swift 2 0 我有一个视图 左上角有一个圆角 在 Swift 没有警告 没有错误 只是没有圆角 这就是它在 Swift let maskPath UIBezierPath roundedRect conten
  • 模态转场需要点击 2 次而不是 1 次

    我的 UITableView 需要点击 2 次才能显示所选单元格的详细信息页面 一次用于选择 另一次用于显示详细信息视图 我希望有一个 CLI 直接显示所单击单元格的详细视图 我在 UITableViewManager m 中使用此方法的模
  • SpriteKit的更新函数:时间与帧率

    一般来说 我对编程和 Spritekit 很陌生 并且有兴趣探索毫秒和帧率之间的关系 以及如何使用更新函数作为两者之间的中介 帧率与毫秒 从本质上讲 帧速率和时间之间的主要区别在于时间始终一致 而帧速率则不然 由于密集的图形程序 它可能会下

随机推荐

  • 如何使用 d3 画布渲染器添加鼠标事件以强制定向图?

    所有其他示例都有带有 svg append 的鼠标事件 我不知道在哪里 输入 以获取画布渲染器中的弧并添加 on click function v4 风格 我想点击获取值d 在此示例中 我应该在哪里添加处理程序 我理解这个例子下面的旧方法
  • stunnel https 被重定向到 http

    我有一个在端口 8081 上侦听的 Web 服务 它是在单声道上运行的 ServiceStack REST Web 服务 如果有帮助的话 我正在尝试使用 stunnel 来保护它 但问题是一旦我连接到https ip https ip 它被
  • 语言切换器,使用 symfony 重定向到当前页面

    在 symfony 中进行语言切换并重定向到所选语言的同一页面的最佳方法是什么 Jobeet 只是在主页上进行重定向 像这样的事情应该可以解决问题
  • 使用 Bash 正则表达式匹配 (=~),其中正则表达式包含引号(" 字符)

    我想使用 Bash 正则表达式匹配 使用 运算符 来匹配包含引号的字符串 举例来说 我有以下字符串 我想提取引号之间的文本 foo Hello World 我的第一次尝试是将正则表达式放在强引号中 以强制引号为常规字符 foo 这会失败 因
  • 找不到类“bolts.AppLinks”

    当我尝试在设备上启动 Android 应用程序时 崩溃并出现奇怪的错误 这个问题从前两天就出现了 这是错误 11 09 17 27 30 461 25146 25146 com ten ten E AndroidRuntime FATAL
  • 如何使用 boto 以编程方式检查 Amazon S3 权限?

    我们在 Amazon S3 的存储桶中有一棵茂密的树 其中包含大量文件 我刚刚发现 虽然有些文件有两个权限条目 如单击 AWS 管理控制台中的一个文件 然后单击属性 gt 权限 一行是 所有人 另一行是某个特定用户 其他文件只有一个该用户的
  • 将类函数转换为 lambda 函数

    我正在尝试拉出这样的东西 class helper some class variables public function somehelper somevar some action to somehelper somevar 我希望它
  • Android通知大图样式和大文本样式

    我已经使用大图片样式构建了推送通知 如图所示here http developer android com reference android app Notification BigPictureStyle html 是否可以混合大图片样
  • 何时在 MySQL 表中使用 NULL

    我很欣赏数据库表中 NULL 值的语义 它不同于 false 和空字符串 然而 我经常读到有关字段可为空时的性能问题的信息 并建议在 NULL 实际上在语义上正确的情况下使用空字符串 什么情况适合使用可为空字段和 NULL 值 有哪些权衡
  • Java Singleton 与 static - 是否有真正的性能优势?

    我正在合并一个 CVS 分支 较大的更改之一是用具有静态初始化块和所有静态方法的抽象类替换单例模式 这是值得保留的东西吗 因为它需要合并很多冲突 我会在什么样的情况下考虑这种重构是值得的 我们在 Weblogic 8 1 下运行这个应用程序
  • 查找包含给定文件的目录?

    我希望这是一个有趣的问题 我想找到一个包含所有给定文件的目录 到目前为止我所做的如下 在unix中查找多个文件 find type f name cache o name xml o name html 参考 http alvinalexa
  • Apache/PHP 大文件下载(>2Gb)失败

    我正在使用 PHP 脚本来控制下载文件的访问 这对于 2Gb 以下的任何文件都适用 但对于较大的文件则失败 Apache 和 PHP 都是 64 位 Apache will如果直接访问则允许下载文件 我不允许 PHP 的核心 忽略访问控制
  • 设置自动填充建议的样式

    非常简单 我正在研究输入的 CSS 但是当 Chrome 在 MacOS 上 使用建议 自动填充功能 填充输入时 它会更改字体 有没有办法覆盖它以保留我的自定义字体和其余 CSS 属性 最令人不安的是 场地的高度发生了变化 这真的很难看 也
  • 如果屏幕小于一定宽度则隐藏 div

    如果用户屏幕 document ready function if screen width gt 1024 if screen size is 1025px wide or larger yourClass css display non
  • 如何在“rails new app --skip-test-unit”之后重新启用 Rails 4 中的 Test::Unit

    I used rails new app skip test unit 因为最初 我认为我可以稍后添加测试 我开发了我的应用程序的很大一部分 现在 我想添加 Test Unit 但我找不到任何有关如何执行此操作的文档 谷歌搜索仅引导我找到
  • 如何在不使用 JS 发出新请求的情况下读取当前标头? [复制]

    这个问题在这里已经有答案了 可能的重复 在 Javascript 中访问 HTTP 标头 https stackoverflow com questions 220231 accessing http headers in javascri
  • 设置 HTTPClient get() 请求的超时

    此方法提交一个简单的 HTTP 请求并调用成功或错误回调即可 void getSimpleReply String command callback errorCallback async try HttpClientRequest req
  • 如何将 S4 槽选择器“@”重载为通用函数

    我正在尝试转动 R 中的运算符转换为 S3 系统的通用函数 基于中的章节编写 R 扩展 添加新的泛型 https cran r project org doc manuals r release R exts html Adding new
  • 选择单打和双打之一

    我有一个包含 A B 和 C 列的表 A 列可能有重复项 我需要一个查询 该查询将为我提供一个在 A 列中具有唯一值的结果集 并且我不关心它可能需要哪些重复项 我事先对其余数据一无所知 一个例子可能是 A B C 1 8 8 1 7 7 2
  • 更改 Swift 3 中 UIBarButtonItem(图像)的大小

    我正在尝试更改导航栏中某些图标的大小 但我对如何执行此操作有点困惑 到目前为止我的代码是 func setUpNavBarButtons let moreButton UIBarButtonItem image UIImage named