ios – 目标 *** 作被调用两次

ios – 目标 *** 作被调用两次,第1张

概述我有一个VC RaceDayChecklistViewController.m,它是RaceDayChecklistViewControllerBase.m的子类. 在RaceDayChecklistVC.m中,添加了一个被调用两次目标 *** 作. nextOrNewButton是点击的按钮,我想调用“demo”动作. 另外,checklistnavigationItem是栏按钮项. - (void) 我有一个VC RaceDayCheckListVIEwController.m,它是RaceDayCheckListVIEwControllerBase.m的子类.

在RaceDayCheckListVC.m中,添加了一个被调用两次的目标 *** 作. nextOrNewbutton是点击的按钮,我想调用“demo”动作.
另外,checkListnavigationItem是栏按钮项.

- (voID)vIEwDIDLoad{    checkListtableVIEwBase=checkListtableVIEw;   checkListNavigationItemBase=checkListnavigationItem;    nextOrNewbuttonBase=nextOrNewbutton;    [nextOrNewbutton addTarget:self action:@selector(demo) forControlEvents:UIControlEventAllEvents];}-(voID) demo{    RaceDayDataController *sharedController = [RaceDayDataController sharedDataController];    if (sharedController.issubmited)    {        [self.checkListnavigationItem setTitle:@"New"]; //    }    else    {        [self.checkListnavigationItem setTitle:@"Next"];        [self showAlert];    }}-(voID) vIEwWilldisappear:(BOol)animated{    [nextOrNewbutton removeTarget:self action: @selector(demo) forControlEvents:UIControlEventAllEvents];}

可能是多次调用动作演示的原因是什么?它是基类负责人吗?

请指导.

解决方法 UIbutton在按下时会生成多个事件:通常它们是UIControlEventtouchDownInsIDe和UIControlEventtouchUpInsIDe.所以,如果你想处理按下,你应该抓住你需要的那个(可能是UIControlEventtouchUpInsIDe),而不是UIControlEventsAll. 总结

以上是内存溢出为你收集整理的ios – 目标 *** 作被调用两次全部内容,希望文章能够帮你解决ios – 目标 *** 作被调用两次所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1057403.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存