Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.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 我可以在同一个tableViewCell中使用IBOutlet和IBAction吗?_Ios_Iphone_Ibaction_Iboutlet - Fatal编程技术网

Ios 我可以在同一个tableViewCell中使用IBOutlet和IBAction吗?

Ios 我可以在同一个tableViewCell中使用IBOutlet和IBAction吗?,ios,iphone,ibaction,iboutlet,Ios,Iphone,Ibaction,Iboutlet,将IBOutlet和IBAction放在tableviewcell中的同一个按钮上是否是一种良好的做法 当人们在单元格中有IBOutlets,在viewcontroller中有IBAction时,是什么情况 谢谢 我可以在同一个tableViewCell中使用IBOutlet和IBAction吗? 是的,你可以用 在tableviewcell中使用同一按钮的IBOutlet和IBAction是否是一种良好做法? 根据我的意见,如果您在UIViewController中使用iAction,那么与U

IBOutlet
IBAction
放在
tableviewcell
中的同一个按钮上是否是一种良好的做法

当人们在单元格中有
IBOutlets
,在
viewcontroller
中有
IBAction
时,是什么情况


谢谢

我可以在同一个tableViewCell中使用IBOutlet和IBAction吗?

是的,你可以用

在tableviewcell中使用同一按钮的IBOutlet和IBAction是否是一种良好做法?


根据我的意见,如果您在
UIViewController
中使用iAction,那么与
UITableViewCell
相比,它会更好,因为如果您想对数据上的事件执行某些操作(在
ViewController
中定义),在这种情况下,您可以轻松执行,而不需要全局管理该数据,但若您想在单元格中的事件上执行某些操作,那个么您需要全局地或通过委托来管理这些数据

我可以在同一个tableViewCell中使用IBOutlet和IBAction吗?

是的,你可以用

在tableviewcell中使用同一按钮的IBOutlet和IBAction是否是一种良好做法?


根据我的意见,如果您在
UIViewController
中使用iAction,那么与
UITableViewCell
相比,它会更好,因为如果您想对数据上的事件执行某些操作(在
ViewController
中定义),在这种情况下,您可以轻松执行,而不需要全局管理该数据,但若您想在单元格中的事件上执行某些操作,那个么您需要全局地或通过委托来管理这些数据

如果您为带有.h和.m文件的自定义单元格获取了uitableviewcell的子类,那么您应该在.h文件中定义IBOutlet,并且当您想要定义其操作时,您可以在cellForRowAtIndexPath:方法中定义它,并手动定义其目标方法。
如果要在uiviewcontroller中定义此方法,则它将对所有按钮操作执行相同的操作

如果您为带有.h和.m文件的自定义单元格获取了uitableviewcell的子类,那么您应该在.h文件中定义IBOutlet,并且当您想要定义其操作时,您可以在cellForRowAtIndexPath:方法中定义它,并手动定义其目标方法。
如果要在uiviewcontroller中定义此方法,则它将对所有按钮操作执行相同的操作

首先,您需要了解IBOutlet和IBAction的用法。它们被用于完全不同的原因。我们使用IBOutlet帮助界面生成器识别UI元素的参考变量,并使用IBAction帮助界面生成器识别事件/动作。因此,您没有理由不在同一类或单独的类中指定按钮的IBOutlet和该按钮的IBAction,例如TableViewCell类中的IBOutlet和正在加载单元格的视图控制器中的IBAction

根据我的经验,我想说,如果您在表视图单元格中有一个按钮,并且希望根据该按钮的单击触发事件,那么在CustomTableViewCell类中有action方法实际上是很好的。例如,假设您希望在单击时更改按钮图像。在这种情况下,在didSelectRowAtIndexpath方法中,您可以更改按钮的选择状态,同时可以在视图类的iAction方法中检查按钮的选择状态并设置图像

另一方面,如果有基于按钮单击的控制流,比如说,基于按钮单击,您将转到不同的视图控制器,那么您可能需要在控制器类中设置iAction,因为您需要访问导航控制器或视图控制器


因此,这取决于IBAction方法的用途以及执行操作所需的访问方式。

首先,您需要了解IBAction和IBAction的用法。它们被用于完全不同的原因。我们使用IBOutlet帮助界面生成器识别UI元素的参考变量,并使用IBAction帮助界面生成器识别事件/动作。因此,您没有理由不在同一类或单独的类中指定按钮的IBOutlet和该按钮的IBAction,例如TableViewCell类中的IBOutlet和正在加载单元格的视图控制器中的IBAction

根据我的经验,我想说,如果您在表视图单元格中有一个按钮,并且希望根据该按钮的单击触发事件,那么在CustomTableViewCell类中有action方法实际上是很好的。例如,假设您希望在单击时更改按钮图像。在这种情况下,在didSelectRowAtIndexpath方法中,您可以更改按钮的选择状态,同时可以在视图类的iAction方法中检查按钮的选择状态并设置图像

另一方面,如果有基于按钮单击的控制流,比如说,基于按钮单击,您将转到不同的视图控制器,那么您可能需要在控制器类中设置iAction,因为您需要访问导航控制器或视图控制器


因此,这取决于IBAction方法的用途以及执行操作所需的访问方式。

我逐案思考我逐案思考