Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.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中调用多个web服务_Ios_Objective C - Fatal编程技术网

避免在ios中调用多个web服务

避免在ios中调用多个web服务,ios,objective-c,Ios,Objective C,我正在从我的应用程序向服务器数据库插入数据。 在提交按钮上,我调用inserdata web服务。 我的数据被插入数据库。但我有一个问题, 在我再次点击提交按钮返回第一个结果之前,同一条记录多次插入数据库 请帮助我如何避免这种情况。(我还误按了多次提交按钮,然后多次插入同一条记录)。当web服务第一次触发时。。。。set button.selected=是,并在功能中检查是否选择了按钮,然后不执行操作。使用此布尔值区分这两种情况。当用户按下提交按钮时,显示进度hud或活动指示器视图(加载覆盖)。

我正在从我的应用程序向服务器数据库插入数据。 在提交按钮上,我调用inserdata web服务。 我的数据被插入数据库。但我有一个问题, 在我再次点击提交按钮返回第一个结果之前,同一条记录多次插入数据库


请帮助我如何避免这种情况。(我还误按了多次提交按钮,然后多次插入同一条记录)。

当web服务第一次触发时。。。。set button.selected=是,并在功能中检查是否选择了按钮,然后不执行操作。使用此布尔值区分这两种情况。

当用户按下提交按钮时,显示进度hud或活动指示器视图(加载覆盖)。这将让用户知道某些处理正在进行,并且不会触发任何其他操作

还将synchronous属性设置为从中调用此Web服务的对象。(当您同步执行某项任务时,您会等待该任务完成后再继续执行另一项任务。当您异步执行某项任务时,您可以在该任务完成前继续执行另一项任务。)

当您收到响应时,清除表单或应用程序中的所有数据。因为若数据被清除,那个么用户就不能将相同的记录插入数据库

因此,无需禁用提交按钮

试试这个

 - (IBAction)doneCollectionSaveAction:(id)sender {                
   if([activity isAnimating]==YES){
               [ALToastView toastInView:[UIApplication sharedApplication].keyWindow withText:@"Please wait..."];        
          }else{                
            [self addToCollection];
          }
   }

or


 - (IBAction)doneCollectionSaveAction:(UIButton *)sender {
        if (sender.selected==YES) {
            //do nothing
            [ALToastView toastInView:[UIApplication sharedApplication].keyWindow withText:@"Please wait..."];
        }else{  
                //send data to server
                self.buttonDoneOutlet.selected=YES;
                [self addToCollection];
        }
    }
    //and self.buttonDoneOutlet.selected=NO; //failure network call 

在收到响应之前禁用该按钮?在插入数据时限制“提交”按钮点击,然后获取数据,如果可能,在成功添加记录后,从“提交”按钮所在的“提交表单”中出来,因此用户按下“提交”按钮时,任何人都不能再次按下该按钮。当用户按下“提交”按钮时,显示“活动指示器”视图(加载覆盖)。这将让用户知道某些处理正在进行,并且不会触发任何其他操作