当前位置: 首页 > 面试题库 >

在Swift中获取UIBarButtonItem的框架?

施阳夏
2023-03-14
问题内容

如何快速获取rightbarbuttonItem的框架?我发现了这一点:UIBarButtonItem:如何找到它的框架?但是它说不能将NSString转换为UIView,或者不能将NSString转换为String:

let str : NSString = "view" //or type String
let theView : UIView = self.navigationItem.rightBarButtonItem!.valueForKey("view")//or 'str'

目标是删除rightBarButtonItem,添加一个imageView,然后使用fadeOut效果对其进行移动。

谢谢


问题答案:

您应该像这样尝试:

var barButtonItem = self.navigationItem.rightBarButtonItem!
var buttonItemView = barButtonItem.valueForKey("view")

var buttonItemSize = buttonItemView?.size

编辑(快速3):

var barButtonItem = self.navigationItem.rightBarButtonItem!
let buttonItemView = barButtonItem.value(forKey: "view") as? UIView
var buttonItemSize = buttonItemView?.size


 类似资料:
  • 问题内容: 如何在Swift中设置自定义UIBarButtonItem的操作? 以下代码将按钮成功放置在导航栏中: 现在,我想在触摸按钮时打电话。到目前为止,我的努力: 和.. 和.. 请注意,它出现在智能感知中,但不起作用。 谢谢你的帮助。 编辑:为后代,以下作品: 问题答案: 从Swift 2.2开始,针对编译时检查的选择器有一种特殊的语法。它使用语法:。 Swift 3及更高版本: 如果不确

  • 问题内容: 我在工具栏中有一个按钮。我如何抓住它的框架?做不是有一个属性? 问题答案: 试试这个;

  • 问题内容: 我使用WKWebView登录到一个网站,现在我想解析该网站的html。如何快速访问HTML网站?我知道它如何用于UIWebView但不适用于WKWebView。 谢谢你的帮助! 问题答案: 如果您等到页面加载完毕,则可以使用: 您还可以注入一些JavaScript,使您返回HTML。 您可以注入的javascript如下所示:

  • 问题内容: 首先,我很清楚Xcode 6和Swift语言是Beta版本,容易出错。但是,这一特定功能似乎有些奇怪,因为到目前为止我尝试过的所有其他功能似乎都可以正常工作。 如果这不适合StackOverflow,我将很乐意删除该问题。 我已经开始使用Xcode 6 / Swift(为发布做准备),与我想的相比,这是一种非常愉快的体验。话虽如此,在移植我喜欢做的“训练”风格的应用程序时,一个问题是由

  • 问题内容: 我尝试了几种方法来获取文件大小,但始终为零。 我在日志中: 问题答案: 使用而不是 +调用attr上的.fileSize()。 在Swift 2.0中,我们使用do try catch模式,如下所示: 在Swift 3.x / 4.0中:

  • 问题内容: 斯威夫特新手。 我在执行一项琐碎的任务时遇到了麻烦。我要做的就是 按需 获取鼠标光标的x,y坐标。我宁可 不要 等到鼠标移动事件触发后再抓住指针的坐标。 将不胜感激! 问题答案: 您应该看看NSEvent方法mouseLocation 编辑/更新: Xcode 11•Swift 5.1 如果您希望在应用程序处于活动状态时监视任何窗口上的事件,则可以添加与mouseMoved掩码匹配的L