Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/117.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 分析错误的用户界面_Ios_Swift_Parse Platform - Fatal编程技术网

Ios 分析错误的用户界面

Ios 分析错误的用户界面,ios,swift,parse-platform,Ios,Swift,Parse Platform,我想在每次生成解析请求并失败时向用户添加一个通知(AlertView)。例如,告诉用户网络连接已断开或他们尝试的用户名已被使用。是否可以在一个位置(如设置或子类)添加UI以收集和显示所有错误消息?我宁愿不必处理每个if error!=每个PFQuery中的nil块 我知道有些错误是唯一的,必须单独处理,但同时其他错误是通用的,如网络和登录/注册,应该有固定的用户警报。我知道Parse已经在某种程度上做到了这一点,通过打印出网络错误,我只是想知道是否有一种方法可以简单地捕获这些打印输出的创建位置并

我想在每次生成解析请求并失败时向用户添加一个通知(AlertView)。例如,告诉用户网络连接已断开或他们尝试的用户名已被使用。是否可以在一个位置(如设置或子类)添加UI以收集和显示所有错误消息?我宁愿不必处理每个
if error!=每个
PFQuery
中的nil

我知道有些错误是唯一的,必须单独处理,但同时其他错误是通用的,如网络和登录/注册,应该有固定的用户警报。我知道Parse已经在某种程度上做到了这一点,通过打印出网络错误,我只是想知道是否有一种方法可以简单地捕获这些打印输出的创建位置并从那里向用户发出警告。我所说的网络错误的一个例子是:

2015-10-27 22:00:47.501 YLSA[39956:2216153] [Error]: The Internet connection appears to be offline. (Code: 100, Version: 1.9.1)
2015-10-27 22:00:47.501 YLSA[39956:2216153] [Error]: Network connection failed. Making attempt 1 after sleeping for 1.024460 seconds.
2015-10-27 22:00:47.502 YLSA[39956:2216153] [Error]: The Internet connection appears to be offline. (Code: 100, Version: 1.9.1)
2015-10-27 22:00:47.502 YLSA[39956:2216153] [Error]: Network connection failed. Making attempt 1 after sleeping for 1.934890 seconds.
2015-10-27 22:00:47.502 YLSA[39956:2216153] [Error]: The Internet connection appears to be offline. (Code: 100, Version: 1.9.1)
2015-10-27 22:00:47.502 YLSA[39956:2216153] [Error]: Network connection failed. Making attempt 1 after sleeping for 1.236957 seconds.
2015-10-27 22:00:48.571 YLSA[39956:2216153] [Error]: The Internet connection appears to be offline. (Code: 100, Version: 1.9.1)
2015-10-27 22:00:48.571 YLSA[39956:2216153] [Error]: Network connection failed. Making attempt 2 after sleeping for 2.048920 seconds.
2015-10-27 22:00:48.742 YLSA[39956:2216153] [Error]: The Internet connection appears to be offline. (Code: 100, Version: 1.9.1)
2015-10-27 22:00:48.742 YLSA[39956:2216153] [Error]: Network connection failed. Making attempt 2 after sleeping for 2.473915 seconds.
2015-10-27 22:00:49.440 YLSA[39956:2216148] [Error]: The Internet connection appears to be offline. (Code: 100, Version: 1.9.1)
2015-10-27 22:00:49.440 YLSA[39956:2216148] [Error]: Network connection failed. Making attempt 2 after sleeping for 3.869780 seconds.

谢谢

大多数事情都是在视图控制器中开始和结束的。确保vc中调用parse方法的方法有一个包含结果和NSError的块参数

您的视图控制器可能已经从应用程序级vc继承,该vc集中了有关外观和行为的一些细节。这是添加通用错误处理的好地方

因此,应用程序的视图控制器:

* change the UI to indicate "busy" state
* start a chain of calls that lead to server calls
* results and NSErrors are passed back up the chain 
* in the vc, in the completion blocks:
   - change the UI to indicate not "busy"
   - handle errors for things that are custom to the call
   - call the inherited handler for errors that are handled generically
在一个地方添加UI以收集和显示所有错误消息是什么意思?请更具体一些,以便得到具体的答案。每个错误都在唯一的块中处理的原因是因为…它们是唯一的,每种情况都是不同的,并且是由环境组成的。您希望在它们各自的块中处理错误,因为当您在一年左右的时间里回到您的代码时,您希望有清晰简洁的大纲,而不需要来回查看文件