gpt4 book ai didi

ios - 如何为 Swift 应用程序中的每个 View 编写不同的键盘处理?

转载 作者:行者123 更新时间:2023-11-30 12:58:58 24 4
gpt4 key购买 nike

在我的应用程序的主面板中,我有一个 textView。当用户按下它时,键盘就会出现,我必须修改该面板上的约束,以便键盘不会覆盖任何内容。为此,我在该类的 viewDidLoad 方法中附加了一个观察者:

NSNotificationCenter.defaultCenter().addObserver(self, selector: 
#selector(keyboardWillChangeFrame),
name: UIKeyboardWillChangeFrameNotification, object: nil)

然后我有一个方法:

func keyboardWillChangeFrame(notification: NSNotification) {

处理一切。

现在,在不同的面板上我想以不同的方式修改我的约束,所以我为此准备了不同的方法:

func keyboardWillChangeFrameInOtherWay(notification: NSNotification) {

现在为了支持这一观点,我必须将其附加到观察者身上。但是当我在viewDidLoad中写道:

NSNotificationCenter.defaultCenter().addObserver(self, selector: 
#selector(keyboardWillChangeFrameInOtherWay), name:
UIKeyboardWillChangeFrameNotification, object: nil)

然后,当键盘出现在第二个面板上时 - 两种方法都会触发(从第一个面板和第二个面板)。如何为特定面板仅运行一种方法?

最佳答案

我还没有清楚地理解你的问题,顺便说一句,你可以访问 NSNotificationobject 字段。如果您将一个对象传递给 NSNotificationCenter,那么您将收到它并且可以执行一种方法或另一种方法。另一种可能性是每次删除并添加观察者,以便拥有文本字段的 Controller 每次仅观察一个...

关于ios - 如何为 Swift 应用程序中的每个 View 编写不同的键盘处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40070333/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com