Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/110.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/5/objective-c/26.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
Ios 如何禁用UIButton?_Ios_Objective C_Cocoa Touch_Uibutton - Fatal编程技术网

Ios 如何禁用UIButton?

Ios 如何禁用UIButton?,ios,objective-c,cocoa-touch,uibutton,Ios,Objective C,Cocoa Touch,Uibutton,我正在做一个项目,我必须在plist中显示照片库的所有照片,并在UIButtons上水平显示它们 我的应用程序还将有一个编辑按钮:当用户单击此按钮时,每个按钮上都会显示一个删除标记(如其他iPhone/iPad应用程序中通常出现的删除标记) 但这里有一个关键点:一旦这个删除标记出现,按钮的功能应该被禁用。我试着通过以下几点来实现这一点: { editbutton.enabled=NO; } …但它既不产生错误也不起作用。我该怎么办?请设置此 editButton.userInteract

我正在做一个项目,我必须在plist中显示照片库的所有照片,并在
UIButton
s上水平显示它们

我的应用程序还将有一个编辑按钮:当用户单击此按钮时,每个按钮上都会显示一个删除标记(如其他iPhone/iPad应用程序中通常出现的删除标记)

但这里有一个关键点:一旦这个删除标记出现,按钮的功能应该被禁用。我试着通过以下几点来实现这一点:

{
  editbutton.enabled=NO;
}
…但它既不产生错误也不起作用。我该怎么办?

请设置此

 editButton.userInteractionEnabled = NO; 
或者你可以使用

 editButton.enabled = NO;

使用
UIControl
enabled
属性,该属性是
ui按钮的超类,并将其设置为NO

myButton.enabled=否

您也可以按照@Marvin的建议尝试,
在这种情况下,您的按钮将不会响应用户的任何触摸事件,

属性的setterenabled在类UIButton中被覆盖。尝试发送消息

 [editbutton setEnabled:NO];

除上述内容外:

设置
editButton.userInteractionEnabled=NO
或者你可以使用
editButton.enabled=否

您可能希望灰显按钮,以便用户知道它已被禁用:
editButton.alpha=0.66

Swift 3及以上版本
yourBtn.userInteractionEnabled = NO; 
editButton.isEnabled=false


setEnabled
现在是
isEnabled

的setter方法的一部分,显示您禁用的代码块您不必使用此方法,setEnabled:NO是更新UI的正确方法。“isEnabled”和“enabled”之间的区别是什么@OMGPOP isEnabled是enabled属性的合成getter。enabled已在Swift 3 iOS 10中重命名为isEnabled在iOS 10 Swift 3中,isEnabled是唯一存在的东西。找不到setEnabled。