当文本字段中有1个或多个字符时,我想使按钮出现。 目前,我有3个问题:
如果这样做,我将无法使用@objc,然后会出现以下错误“ @objc只能与类的成员,@ objc协议和类的具体扩展一起使用”。 所以基本上我不能使用该按钮。
我想为按钮添加约束,但是在某些约束上,我希望安全区域成为“ toItem”,但我不知道它为此使用的“名称”,我使用了视图。 safeAreaInsets,但是我不确定这是否是正确的方法。
我想检查文本字段中有多少个字符(因此我希望按钮在用户键入字母后立即显示)。 我认为这必须在if语句中完成,但我不知道如何检查文本字段中的字符。
这是我第一个问题的代码:
CREATE OR REPLACE PROCEDURE TEST_PRODUCT
(
PRODUCT IN VARCHAR2
) AS
BEGIN
INSERT INTO product_counts(productCounts) SELECT COUNT(*) FROM products
WHERE product_name = PRODUCT;
END TEST_PRODUCT;
DECLARE
CURSOR cur_product
IS
SELECT distinct PRODUCT_NAME FROM products;
BEGIN
FOR product IN cur_product
LOOP
BEGIN
TEST_PRODUCT( product.product_name);
END;
END LOOP;
END;
这是第二个:
addButton.addTarget(self, action: #selector(buttonAction(_ :)), for: .touchUpInside)
self.view.addSubview(addButton)
@objc func buttonAction(_ : UIButton) {
}
这是第三个:
let buttonRightConstraint = NSLayoutConstraint(item: addButton, attribute: .right, relatedBy: NSLayoutConstraint.Relation.equal, toItem: view.safeAreaInsets, attribute: .right, multiplier: 1.0, constant: 16)
let buttonTopConstraint = NSLayoutConstraint(item: addButton, attribute: .top, relatedBy: NSLayoutConstraint.Relation.equal, toItem: view.safeAreaInsets , attribute: .top , multiplier: 1.0, constant: 16)
这是我的总代码:
if (TextFieldName.text!.count > 0) {
}
也许听起来像是一个愚蠢的问题,但我是初学者。
答案 0 :(得分:-1)
@objc func buttonAction(_ : UIButton)
是一个函数,并且必须位于同一级别的viewDidLoad之外class AddWorkoutController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
@objc func buttonAction(_ : UIButton) {
}
}
对我来说,最好的解决方案是将您的addButton
添加到情节提要中,默认情况下选中隐藏属性(选择按钮,然后转到右侧面板>显示属性检查器>隐藏属性)
您必须在func textFieldDidEndEditing(_ textField: UITextField)
扩展名中添加AddWorkoutController
。在其中可以添加if (TextFieldName.text!.count > 0)
,然后更改isHidden
(addButton
)的addButton.isHidden
属性
extension AddWorkoutController: UITextFieldDelegate {
public func textFieldShouldReturn(_ textField: UITextField) -> Bool {
textField.resignFirstResponder()
return true
}
func textFieldDidEndEditing(_ textField: UITextField) {
}
}
PS:请注意缩进以提高灵活性,并且通常使用camelCase编写变量。
您会在此处找到一些最佳做法=> https://github.com/raywenderlich/swift-style-guide