gpt4 book ai didi

ios - 当用户在字段中键入至少一个字符时,uitextfield rightView 可见

转载 作者:行者123 更新时间:2023-11-28 22:20:19 26 4
gpt4 key购买 nike

我想知道是否有任何方法可以使 UITextField 的正确 View 仅在内部至少有一个字符时可见,因为通过设置 UITextFieldViewModeWhileEditing将在我专注于该字段时显示,而不是在我开始输入时显示。

我只能想出实现 UITextFieldDelegate 并在用户键入时触发的方法之一上执行此操作。这里唯一的问题是,一旦我创建了一个文本字段并将其添加到 View 中,我就将文本字段的委托(delegate)更改为其他内容。那是因为我通过子类化 UITextField 创建了一个自定义文本字段,我在不同的地方初始化它,在那些不同的地方我将它的委托(delegate)分配给它启动的当前位置。

最佳答案

这是一个更好的主意。 UITextField 发布更改通知。你的子类可以这样观察自己:

// in RSSUITextField.m

[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(textFieldChanged:)
name:UITextFieldTextDidChangeNotification
object:self];

然后实现 textFieldChanged: 并在其中更改您的 rightView 状态。这个答案优于我留下的另一个答案,但我不会删除那个答案,因为它也有效,并且对于控件不发布我们关心的状态更改通知的情况来说,这是一种有用的技术。

由于 RSSUITextField 的每个实例都将通过 NSNotificationCenter 观察自己,因此当它不再重要时,每个实例都有责任将自己作为观察者移除。执行此操作的最晚时间是在 dealloc 上...

- (void)dealloc {
[[NSNotificationCenter defaultCenter] removeObserver:self];
}

关于ios - 当用户在字段中键入至少一个字符时,uitextfield rightView 可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20585250/

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