Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone UITextField始终是可编辑的_Iphone_Objective C_Xcode_User Interface - Fatal编程技术网

Iphone UITextField始终是可编辑的

Iphone UITextField始终是可编辑的,iphone,objective-c,xcode,user-interface,Iphone,Objective C,Xcode,User Interface,我在一个XIB上删除了UITextField控件,我希望它不可编辑。我已经在“属性检查器”上“取消选中”了“已启用”和“已启用用户交互”。但是,当我在模拟器中运行此应用程序时,当我点击文本字段时,键盘总是出现。我四处搜索,这两个属性似乎是控制这个特定控件“编辑性”的因素。我可以创建一个UITextArea,因为存在一个我“未选中”的“可编辑”复选框。但是,在UITextField的检查器中没有“可编辑”复选框。我运气不好吗?或者是否需要更多我不知道的设置?如果要禁用用户的触摸事件,“Enable

我在一个XIB上删除了UITextField控件,我希望它不可编辑。我已经在“属性检查器”上“取消选中”了“已启用”和“已启用用户交互”。但是,当我在模拟器中运行此应用程序时,当我点击文本字段时,键盘总是出现。我四处搜索,这两个属性似乎是控制这个特定控件“编辑性”的因素。我可以创建一个UITextArea,因为存在一个我“未选中”的“可编辑”复选框。但是,在UITextField的检查器中没有“可编辑”复选框。我运气不好吗?或者是否需要更多我不知道的设置?

如果要禁用用户的触摸事件,“Enabled”属性就是您要查找的属性

见:

您可能在界面生成器和应用程序之间的链接方面遇到了一些问题(我已经多次遇到这个问题)

尝试直接在代码中设置该值,而不是使用IB,然后查看它是否提供了所需的结果。

如果要禁用用户的触摸事件,则要查找“Enabled”属性

见:

您可能在界面生成器和应用程序之间的链接方面遇到了一些问题(我已经多次遇到这个问题)


尝试直接在代码中设置值,而不是使用IB,然后查看它是否提供了所需的结果。

尝试此操作,在viewDidLoad中将文本字段设置为:

myTextField.userInteractionEnabled = FALSE;

尝试此操作,在viewDidLoad中将文本字段设置为:

myTextField.userInteractionEnabled = FALSE;
这对我来说似乎很有效,希望能有所帮助


这对我来说似乎很有效,希望能有所帮助。

由于没有任何解决方案(复选框和添加代码以禁用文本字段)而导致我头发脱落后,最终解决问题的是删除控件,然后重新添加它。重新添加后,我可以通过“启用”复选框禁用TextField,或者将“否”指定给TextField.Enabled。我不知道为什么它现在能工作,但这可以解决其他有相同问题的人的问题。

在由于没有任何解决方案(复选框和添加代码以禁用文本字段)而导致头发脱落后,最终解决问题的是删除控件,然后重新添加它。重新添加后,我可以通过“启用”复选框禁用TextField,或者将“否”指定给TextField.Enabled。我不知道为什么它现在能工作,但这可以解决其他有同样问题的人的问题。

尝试以下方法:

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
    return NO;
}
试试这个:

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
    return NO;
}

代码中放置这些类型配置的最佳位置在哪里?对于这个特定的xib,在ViewControl的“ViewDidLoad”部分?啊,很抱歉忘了提到这一点,我把它放在了上述xib的ViewDidLoad中。在代码中,放置这些类型配置的最佳位置是哪里?对于这个特定的xib,在ViewControl的“ViewDidLoad”部分?啊,很抱歉忘了提到这一点,我把它放在了上述xib的ViewDidLoad中。界面生成器和应用程序之间存在链接问题是什么意思?界面生成器和应用程序之间存在链接问题是什么意思?是的,很抱歉,我没有尽快回复,这就是我所说的IB和你的程序之间的联系。有时我会改变IB中的内容,但这在实际的程序中不会发生。是的,很抱歉我没有及时回复,这就是我所说的IB和您的程序之间的链接。有时我会改变IB中的内容,但这在实际的程序中不会发生。