自动布局问题 Swift 3.0

2023-12-14

enter image description here

我已经Autolayout这个屏幕截图使用。我想当我点击textView,textView 将始终位于键盘上方,而且我正在使用自定义NavigationBar.我已经用过IQKeyBoardManagerSwift它正在工作,但是我的NavigationBar也向上移动我想要我的NavigationBar如果我单击 textView,则会粘在顶部。对此的任何解决方案。提前致谢


雨燕5.0:- 拖动你的UITextView in a contentView(UIView), 创造IBOutletcontentView 的底部约束,即bottomConstraint。使用下面提到的和自定义的代码后NavigationBar也将停留在顶部,只有 textView 将位于键盘上方。

 override func viewDidLoad() {
    super.viewDidLoad()
    let center: NotificationCenter = NotificationCenter.default
    center.addObserver(self, selector: #selector(Profile.keyboardWillShow(notification:)), name: NSNotification.Name.UIKeyboardWillShow, object: nil)
    center.addObserver(self, selector: #selector(Profile.keyboardWillHide(notification:)), name: NSNotification.Name.UIKeyboardWillHide, object: nil)
}

@objc func keyboardWillShow(notification: NSNotification){

let userInfo:NSDictionary = notification.userInfo! as NSDictionary
let keyboardSizeNow:CGSize = (userInfo.object(forKey: UIKeyboardFrameEndUserInfoKey)! as AnyObject).cgRectValue.size
UIView.animate(withDuration: 0.2, animations: { () -> Void in
    self.bottomConstraint.constant = keyboardSizeNow.height - 49
    self.view.layoutIfNeeded()
 })
}

@objc func keyboardWillHide(notification: NSNotification){
    UIView.animate(withDuration: 0.2, animations: { () -> Void in
        self.bottomConstraint.constant = 0
        self.view.layoutIfNeeded()
    })
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

自动布局问题 Swift 3.0 的相关文章

  • 在 Interface Builder 中启用/禁用 NSLayoutConstraints

    NSLayoutConstraint in iOS 8 0 has a BOOL属性称为active这使得动态禁用 启用所述布局约束变得容易 要为视图控制器创建第二个布局集 然后我可以以编程方式启用 禁用它 通过IBOutletCollec
  • iOS 7 中的自定义后退指示器图像未垂直居中

    我使用以下代码在我的 iOS 7 应用程序中为后退指示器使用自定义图像 UIImage temp UIImage imageNamed back black on black normal 2 imageWithRenderingMode
  • 8.0 之前的 iOS 版本上相对于布局边距的布局属性

    什么会导致以下警告 以及 iOS 7 上的后续对齐问题 属性不可用 8 0 之前的 iOS 版本上与布局边距相关的布局属性 发布的答案都没有为我解决问题 但其原因如下 默认情况下 Xcode 6 根据相对边距创建约束 这些仅适用于 iOS
  • Swift 3 按钮文本自动调整大小

    因此 我有根据设备自动调整大小的按钮 我想知道如何使按钮文本自行调整大小 就像具有最小尺寸或比例的 UILable 一样 正如 Matt 上面所说的 UIButton 标题是通过 UILabel 显示的 您可以使用 minumScaleFa
  • iOS 10 联系人照片出现在导航栏上

    我想构建一个与 iOS 10 中的联系人应用程序具有相同动画的视图控制器 当您向下滚动页面时 联系人的照片会出现在导航栏的中间 iOS 10 中有 API 还是自定义实现 Research 有许多技术试图修改导航栏 我花了很多时间逐一尝试
  • 为什么找不到 iCloud 帐户/CKContainer

    请参阅下面我更新的问题 我正在使用 CloudKit 开发我的第一个应用程序 我正在尝试在查找交易之前测试用户是否连接到 iCloud 这是我的代码 显示各种测试 func isICloudContainerAvailable gt Boo
  • Google 地图信息窗口根据内部内容调整大小

    我正在使用此方法创建自定义信息窗口 UIView mapView GMSMapView mapView markerInfoWindow GMSMarker marker基于UIStoryboard使用自动布局 我预计一些内部视图将被调整大
  • 如何在导航栏中添加右键?

    我有一个问题要在导航栏中添加右键 我有两个视图 视图 A 和视图 B 我添加了一个导航栏来查看A 之后我使用了self navigationController pushViewController显示视图 B 视图B的导航栏左侧自动显示一
  • iPhone X 将对象底部与安全区域对齐会破坏其他设备上的外观

    关于 iPhone X 自动布局怪癖的问题 我有两个按钮 以前这些按钮将与超级视图底部对齐 偏移量为 20 以免它们接触屏幕底部 此后我将链接更改为安全区域而不是超级视图 Here s the original setup Looks go
  • Swift 仅删除字符串中的尾随空格

    SO 中的许多示例都固定两侧 即前导和尾随 我的要求只是关于尾随 我的输入文本是 保持我的左侧 期望的输出 保持我的左侧 当然 这个命令会删除两端 let cleansed messageText trimmingCharacters in
  • -[_SwiftValueencodeWithCoder:]:无法识别的选择器发送到实例

    尝试使用 NSCoder 时出现错误 玩家 swift class Player NSObject NSCoding private var playerName String private var playerScore Int pri
  • 布局中的奇怪异常

    尝试调用这个方法 avatarIconImageView setContentHuggingPriority UILayoutPriorityDefaultLow forAxis UILayoutConstraintAxis Horizon
  • 使用自动布局指定 UICollectionView 中单元格的一维

    在 iOS 8 中UICollectionViewFlowLayout支持根据单元格自身的内容大小自动调整单元格大小 这会根据单元格的内容调整单元格的宽度和高度 是否可以为所有单元格的宽度 或高度 指定固定值并允许调整其他尺寸的大小 举一个
  • 在 AppDelegate Swift 中获取本地通知的正文文本或标识符

    每当应用程序收到操作响应时 我想访问 AppDelegate swift 中的应用程序数据 我试图使用 func userNotificationCenter center UNUserNotificationCenter didRecei
  • 如何将 UILabel 的基线与 UIImageView 的底部对齐?

    我试图将 UILabel 的基线与 UIImageView 的底部对齐 我发现我无法选择标签的基线作为标签的属性 但是 我还发现如果用另一个标签替换图像视图 我可以使用基线 有没有办法将标签的基线与图像的底部对齐 Edit 使用最新版本的
  • 将 UIWebView 标题发送到 UINavigationBar

    我正在尝试将 UIWebView 页面标题发送到 UINavigationBar 如果用户单击链接 UINavigationBar 显示后退按钮 但如果在主页上隐藏后退按钮 我也希望如此 要将标题页检索到 UIWebView 中 您可以使用
  • swift 3 gamecenter:参与者数量始终为 4

    我制作了一款与 swift 2 完美配合的 TurnBased 游戏 我可以成功地将代码更改为 swift 3 2 并纠正大约 400 个错误 但游戏中心有一个问题 我不知道如何修复它 当通过游戏中心视图控制器时 我将参与者的数量设置为 2
  • Swift3 中的数组排序

    在我的代码中 我有一个如下所示的结构 struct Object var name String var count Int 我现在正在创建一个包含 10 个对象的数组 这些对象具有随机名称和随机计数 有没有一个简单的方法a 按字母顺序对它
  • 快速转换:错误 - CGPathAddArc

    我正在尝试将我的 Swift 2 代码转换为最新语法 Swift 3 我收到以下错误 Nil 与预期的参数类型 UnsafePointer 不兼容 斯威夫特2代码 CGPathAddArc 路径 nil overlayView frame
  • Swift 3 和 Xcode8 - init 的使用不明确

    在我安装 Xcode 8 并将项目转换为 Swift 3 之前 以下行没问题 现在转换后看起来像这样 let valueData Data Data bytes UnsafePointer

随机推荐

  • 更新slot vuejs中的数据

    你好 我在 laravel 项目中使用 vuejs 这是我的 vuejs 代码 Vue component search and select template div div
  • 即使导出后,process.env 变量也未定义

    我正在编写一个 Node js Express 应用程序 并希望使用环境变量来设置服务器应运行的端口 但是 我似乎无法得到process env PORT阅读我的PORT环境变量 我已经使用定义了 PORT 环境变量export像这样 ex
  • 如何使用 Maven 插件从带有注释的现有实体生成 DDL?

    我有 Maven 项目 我想从现有实体生成 DDL 我怎样才能做到这一点 有没有可以生成 DDL 的 Maven 插件 我正在使用JPA 打开jpa openjpa maven plugin 插件提供了一个目标sql 使用此目标 可以从现有
  • 禁用 Windows 窗体上的所有事件

    有没有办法暂时禁用 Windows 窗体上的所有事件 我遇到的情况是 辅助线程上的处理被主线程上的事件破坏 主线程事件正在修改数据绑定到辅助线程使用的变量的控件的内容 寻找一种方法来 锁定 表单 直到辅助线程上的处理完成 显然 将处理移至主
  • 非规格化向量

    如何对已标准化的向量进行反标准化以获得标准化之前的原始值 例如 vec 0 5 1 0 0 0 vec length sqrt vec x 2 vec y 2 vec z 2 vec normalized vec x vec length
  • Visual Studio 设计时属性 - 表单列表下拉菜单

    编辑 需要明确的是 我知道如何通过反射获取表单列表 我更关心设计时属性网格 我有一个具有 Form 类型公共属性的用户控件 我希望能够在设计时从下拉列表中选择一个表单 我想从一组命名空间填充表单下拉列表 UI Foo Forms 如果您拥有
  • 如何从 Web 扩展弹出 JavaScript 中知道浏览器是 Chrome 还是 Firefox?

    我正在使用chromeChrome 和 Firefox 的命名空间 但想知道哪个浏览器正在运行网络扩展 扩展资源的链接在 Chrome 和 Firefox 中具有不同的方案 const isFirefox chrome runtime ge
  • 使用 float 格式说明符打印 int 变量

    int main int a 5 float b 7 5 printf d f n a b printf d f n a a return 0 当我在 gcc 编译器中编译它时 输出是 5 7 500000 5 7 500000 但是在 V
  • SQL Server中for循环的语法

    a 的语法是什么forSQL 中的循环 没有 for 循环 只有 while 循环 DECLARE i int 0 WHILE i lt 20 BEGIN SET i i 1 do some work END
  • HuggingFace 评估微调的零样本模型

    我正在微调 HuggingFacefacebook bart large mnli为了满足我的需要 我使用以下参数 training args TrainingArguments output dir model directory out
  • 使用深色透明度使标题栏和视图控制器无缝连接

    您好 我一直在互联网上查找并找到了有关此主题的各种有用信息 但似乎没有一个有效 if trying to get something like this 标题栏和窗口其余部分混合的地方 从互联网上得到的代码 iv 到目前为止在我的 view
  • 使用 php simplexml 显示 XML 数据

    我有一段 XML 如下
  • 如何更改 Chart.js 中使用的插值器?

    我一直在寻找一些有关图表库的替代方案 而符合我需求的方案是Chart js 但是 我无法使用它 因为 Chart js 中使用的插值器与 EJS 模板中使用的插值器相同Express like 我使用过其他一些库 例如下划线 js您可以在其
  • 我可以将 WCF DataContract 添加到复杂类型吗?

    我有一个复杂的数据类型 包括许多函数 以及常用的 get 和 get 方法 如果我可以使用 WCF 那么我的生活将会变得更加轻松 这样我的客户端也可以使用这种数据类型 Do I 忽略所有操作 将 DataMemeber 仅在需要的地方 将相
  • GDB 单步执行动态链接器(ld.so) 代码

    我想在我的正常使用中使用 ld so 的代码c代码 我正在尝试通过 GDB 中的代码流TUI当您单步执行代码时 您可以看到源代码和汇编代码 为此我还安装了libc dbg binutils source来自 ubuntu 包管理器的包 GD
  • 无法安装 Jekyll - “致命错误:找不到‘openssl/ssl.h’文件”

    我正在尝试在 Mac OS 上本地托管 Jekyll 站点 下载 Jekyll 后gem install jekyll我遇到了错误 current directory Users main rvm gems ruby 3 0 0 gems
  • 在 Oracle 中调用另一个存储过程

    有谁知道一种方法 或者即使有可能 从另一个存储过程中调用存储过程 如果是这样 你会怎么做 这是我的测试代码 SET SERVEROUTPUT ON DROP PROCEDURE test sp 1 DROP PROCEDURE test s
  • 为什么 Jasper Reports 在服务器中显示空报告,但在 jasper studio 中正确生成

    我正在使用 Jasper Studio 6 6 0 和 Jasper 服务器 7 1 我使用来自指定 URL 的图像创建了一个简单的报告 它在 Jasper Studio 中正确生成 但在服务器中显示为空 请参考附图 Server Scre
  • UIView可以复制吗?

    简单地使用这种方式 UIView view2 view1 copy view1 existed 这将导致模拟器无法启动此应用程序 尝试保留 UIView view2 view1 retain view1 existed modify vie
  • 自动布局问题 Swift 3.0

    我已经Autolayout这个屏幕截图使用 我想当我点击textView textView 将始终位于键盘上方 而且我正在使用自定义NavigationBar 我已经用过IQKeyBoardManagerSwift它正在工作 但是我的Nav