liuql6 лет назад: 4
Родитель
Сommit
6997ee2dff
25 измененных файлов с 111 добавлено и 41 удалено
  1. BIN
      IPUCommon/IPUMobile.framework/IPUMobile
  2. BIN
      IPUMobileFunc/IPUMobileFunc.xcodeproj/project.xcworkspace/xcuserdata/benny.xcuserdatad/UserInterfaceState.xcuserstate
  3. 3 1
      IPUMobileFunc/IPUMobileFunc/IPUDatePlugin.h
  4. 48 3
      IPUMobileFunc/IPUMobileFunc/IPUDatePlugin.m
  5. 3 1
      IPUMobileFunc/IPUMobileFunc/IPUVerifyCodePlugin.m
  6. 1 1
      display-center/ReactNative/node_modules/react-native-camera/ios/RNCamera.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  7. 1 1
      display-center/ReactNative/node_modules/react-native-gesture-handler/ios/RNGestureHandler.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  8. 1 1
      display-center/ReactNative/node_modules/react-native-vector-icons/RNVectorIcons.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  9. 1 1
      display-center/ReactNative/node_modules/react-native-webview/ios/RNCWebView.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  10. 2 2
      display-center/ReactNative/node_modules/react-native/Libraries/ART/ART.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  11. 1 1
      display-center/ReactNative/node_modules/react-native/Libraries/CameraRoll/RCTCameraRoll.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  12. 1 1
      display-center/ReactNative/node_modules/react-native/Libraries/Image/RCTImage.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  13. 2 2
      display-center/ReactNative/node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  14. 1 1
      display-center/ReactNative/node_modules/react-native/Libraries/NativeAnimation/RCTAnimation.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  15. 1 1
      display-center/ReactNative/node_modules/react-native/Libraries/Network/RCTNetwork.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  16. 1 1
      display-center/ReactNative/node_modules/react-native/Libraries/Settings/RCTSettings.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  17. 2 2
      display-center/ReactNative/node_modules/react-native/Libraries/Text/RCTText.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  18. 4 4
      display-center/ReactNative/node_modules/react-native/Libraries/WebSocket/RCTWebSocket.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  19. 14 14
      display-center/ReactNative/node_modules/react-native/React/React.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  20. 2 2
      display-center/Res/config/mobile-config.xml
  21. 1 1
      display-center/display-center.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist
  22. 3 0
      display-center/display-center.xcworkspace/contents.xcworkspacedata
  23. BIN
      display-center/display-center.xcworkspace/xcuserdata/benny.xcuserdatad/UserInterfaceState.xcuserstate
  24. 16 0
      display-center/display-center.xcworkspace/xcuserdata/benny.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
  25. 2 0
      display-center/display-center/AppDelegate+NetworkObserver.m

BIN
IPUCommon/IPUMobile.framework/IPUMobile


BIN
IPUMobileFunc/IPUMobileFunc.xcodeproj/project.xcworkspace/xcuserdata/benny.xcuserdatad/UserInterfaceState.xcuserstate


+ 3 - 1
IPUMobileFunc/IPUMobileFunc/IPUDatePlugin.h

@ -13,7 +13,9 @@
13 13
        
14 14
#import <Foundation/Foundation.h>
15 15
16
@interface IPUDatePlugin : NSObject
16
#import <IPUMobile/IPUMobile.h>
17
18
@interface IPUDatePlugin : IPUPlugin
17 19
18 20
- (void)getDate:(NSArray *)params;
19 21

+ 48 - 3
IPUMobileFunc/IPUMobileFunc/IPUDatePlugin.m

@ -13,19 +13,64 @@
13 13
        
14 14
#import "IPUDatePlugin.h"
15 15
16
#import <IPUFoundation/IPUFoundation.h>
17 16
#import <IPUMobileUI/IPUMobileUI.h>
18 17
19 18
@implementation IPUDatePlugin
20 19
21 20
- (void)getDate:(NSArray *)params {
22 21
    NSParameterAssert(params && params.count >= 2);
22
    IPUAlertViewType type = IPUAlertViewTypeDate;//默认格式:年月日
23 23
    
24
    NSString *startDate = params[0];
25 24
    NSString *dateFormat = params[1];
25
    if ([self isValidate:@"HH.*MM.*" withStr:[dateFormat uppercaseString]]) {
26
        type = IPUAlertViewTypeTime;
27
    } else if ([self isValidate:@"YYYY.*MM.*DD" withStr:[dateFormat uppercaseString]]) {
28
        type = IPUAlertViewTypeDate;
29
    } else if ([self isValidate:@"YYYY.*MM.*" withStr:[dateFormat uppercaseString]]) {
30
        IPUDatePickerView *datePicker = [[IPUDatePickerView alloc] initWithDate:params[0] Formater:dateFormat];
31
        __weak typeof(self) weakself = self;
32
        [datePicker showWithCallback:^(IPUDatePickerView *pickerView, NSString *date) {
33
            [weakself callback:date];
34
        }];
35
        [[self getViewController].view addSubview:datePicker];
36
        return;
37
    }
38
39
    [self date:param[0]
40
        format:dateFormat
41
      viewType:type];
42
}
43
44
- (void)date:(NSString *)date
45
      format:(NSString *)format
46
    viewType:(IPUAlertViewType)viewType {
47
    UIViewController *rootCtrl = (UIViewController *)self.mobileDelegate;
48
    if (rootCtrl.presentedViewController) {
49
        [rootCtrl dismissViewControllerAnimated:NO completion:nil];
50
    }
26 51
    
27
    IPUDatePickerView *datePicker = [[IPUDatePickerView alloc] initWithDate:startDate Formater:dateFormat];
52
    IPUAlertViewController *alertViewCtrl = [[IPUAlertViewController alloc] init];
53
    alertViewCtrl.modalPresentationStyle = UIModalPresentationFullScreen;
54
    //设置透明效果
55
56
    alertViewCtrl.alertType = viewType;
57
    [alertViewCtrl setPlugin:self];
58
    if (![IPUCommonTool isNull:date]) {
59
        alertViewCtrl.date = date;
60
    }
28 61
    
62
    if (![IPUCommonTool isNull:format]) {
63
        alertViewCtrl.dateFormat = format;
64
    }
65
    
66
    [rootCtrl presentViewController:alertViewCtrl
67
                           animated:NO
68
                         completion:nil];
69
}
70
71
- (BOOL)isValidate:(NSString *)regex withStr:(NSString *)str {
72
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
73
    return [predicate evaluateWithObject:str];
29 74
}
30 75
31 76
@end

+ 3 - 1
IPUMobileFunc/IPUMobileFunc/IPUVerifyCodePlugin.m

@ -13,6 +13,8 @@
13 13
        
14 14
#import "IPUVerifyCodePlugin.h"
15 15
16
#import <IPUFoundation/IPUFoundation.h>
17
16 18
@interface IPUVerifyCodePlugin ()
17 19
18 20
@property (nonatomic, strong) UITextField *textField;
@ -29,7 +31,7 @@
29 31
        if (@available(iOS 12.0, *)) {
30 32
            _textField.textContentType = UITextContentTypeOneTimeCode;
31 33
        } else {
32
            NSLog(@"不支持的系统版本");
34
            IPULog(@"不支持的系统版本");
33 35
        }
34 36
        
35 37
        UIViewController *viewController = (UIViewController *)self.mobileDelegate;

+ 1 - 1
display-center/ReactNative/node_modules/react-native-camera/ios/RNCamera.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -9,7 +9,7 @@
9 9
			<key>isShown</key>
10 10
			<false/>
11 11
			<key>orderHint</key>
12
			<integer>25</integer>
12
			<integer>26</integer>
13 13
		</dict>
14 14
	</dict>
15 15
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native-gesture-handler/ios/RNGestureHandler.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -9,7 +9,7 @@
9 9
			<key>isShown</key>
10 10
			<false/>
11 11
			<key>orderHint</key>
12
			<integer>22</integer>
12
			<integer>23</integer>
13 13
		</dict>
14 14
	</dict>
15 15
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native-vector-icons/RNVectorIcons.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>23</integer>
19
			<integer>24</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native-webview/ios/RNCWebView.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -9,7 +9,7 @@
9 9
			<key>isShown</key>
10 10
			<false/>
11 11
			<key>orderHint</key>
12
			<integer>21</integer>
12
			<integer>22</integer>
13 13
		</dict>
14 14
	</dict>
15 15
	<key>SuppressBuildableAutocreation</key>

+ 2 - 2
display-center/ReactNative/node_modules/react-native/Libraries/ART/ART.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -9,14 +9,14 @@
9 9
			<key>isShown</key>
10 10
			<false/>
11 11
			<key>orderHint</key>
12
			<integer>16</integer>
12
			<integer>17</integer>
13 13
		</dict>
14 14
		<key>ART.xcscheme_^#shared#^_</key>
15 15
		<dict>
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>28</integer>
19
			<integer>29</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native/Libraries/CameraRoll/RCTCameraRoll.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -9,7 +9,7 @@
9 9
			<key>isShown</key>
10 10
			<false/>
11 11
			<key>orderHint</key>
12
			<integer>29</integer>
12
			<integer>30</integer>
13 13
		</dict>
14 14
	</dict>
15 15
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native/Libraries/Image/RCTImage.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>27</integer>
19
			<integer>28</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 2 - 2
display-center/ReactNative/node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -9,14 +9,14 @@
9 9
			<key>isShown</key>
10 10
			<false/>
11 11
			<key>orderHint</key>
12
			<integer>9</integer>
12
			<integer>10</integer>
13 13
		</dict>
14 14
		<key>RCTLinking.xcscheme_^#shared#^_</key>
15 15
		<dict>
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>31</integer>
19
			<integer>32</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native/Libraries/NativeAnimation/RCTAnimation.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>26</integer>
19
			<integer>27</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native/Libraries/Network/RCTNetwork.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>24</integer>
19
			<integer>25</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 1 - 1
display-center/ReactNative/node_modules/react-native/Libraries/Settings/RCTSettings.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,7 +16,7 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>32</integer>
19
			<integer>33</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 2 - 2
display-center/ReactNative/node_modules/react-native/Libraries/Text/RCTText.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -9,14 +9,14 @@
9 9
			<key>isShown</key>
10 10
			<false/>
11 11
			<key>orderHint</key>
12
			<integer>13</integer>
12
			<integer>14</integer>
13 13
		</dict>
14 14
		<key>RCTText.xcscheme_^#shared#^_</key>
15 15
		<dict>
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>33</integer>
19
			<integer>34</integer>
20 20
		</dict>
21 21
	</dict>
22 22
	<key>SuppressBuildableAutocreation</key>

+ 4 - 4
display-center/ReactNative/node_modules/react-native/Libraries/WebSocket/RCTWebSocket.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -9,28 +9,28 @@
9 9
			<key>isShown</key>
10 10
			<false/>
11 11
			<key>orderHint</key>
12
			<integer>15</integer>
12
			<integer>16</integer>
13 13
		</dict>
14 14
		<key>RCTWebSocket.xcscheme_^#shared#^_</key>
15 15
		<dict>
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>34</integer>
19
			<integer>35</integer>
20 20
		</dict>
21 21
		<key>fishhook-tvOS.xcscheme_^#shared#^_</key>
22 22
		<dict>
23 23
			<key>isShown</key>
24 24
			<false/>
25 25
			<key>orderHint</key>
26
			<integer>18</integer>
26
			<integer>19</integer>
27 27
		</dict>
28 28
		<key>fishhook.xcscheme_^#shared#^_</key>
29 29
		<dict>
30 30
			<key>isShown</key>
31 31
			<false/>
32 32
			<key>orderHint</key>
33
			<integer>30</integer>
33
			<integer>31</integer>
34 34
		</dict>
35 35
	</dict>
36 36
	<key>SuppressBuildableAutocreation</key>

+ 14 - 14
display-center/ReactNative/node_modules/react-native/React/React.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -16,91 +16,91 @@
16 16
			<key>isShown</key>
17 17
			<false/>
18 18
			<key>orderHint</key>
19
			<integer>10</integer>
19
			<integer>11</integer>
20 20
		</dict>
21 21
		<key>cxxreact-tvOS.xcscheme_^#shared#^_</key>
22 22
		<dict>
23 23
			<key>isShown</key>
24 24
			<false/>
25 25
			<key>orderHint</key>
26
			<integer>12</integer>
26
			<integer>13</integer>
27 27
		</dict>
28 28
		<key>cxxreact.xcscheme_^#shared#^_</key>
29 29
		<dict>
30 30
			<key>isShown</key>
31 31
			<false/>
32 32
			<key>orderHint</key>
33
			<integer>35</integer>
33
			<integer>36</integer>
34 34
		</dict>
35 35
		<key>double-conversion-tvOS.xcscheme_^#shared#^_</key>
36 36
		<dict>
37 37
			<key>isShown</key>
38 38
			<false/>
39 39
			<key>orderHint</key>
40
			<integer>14</integer>
40
			<integer>15</integer>
41 41
		</dict>
42 42
		<key>double-conversion.xcscheme_^#shared#^_</key>
43 43
		<dict>
44 44
			<key>isShown</key>
45 45
			<false/>
46 46
			<key>orderHint</key>
47
			<integer>37</integer>
47
			<integer>38</integer>
48 48
		</dict>
49 49
		<key>jsi-tvOS.xcscheme_^#shared#^_</key>
50 50
		<dict>
51 51
			<key>isShown</key>
52 52
			<false/>
53 53
			<key>orderHint</key>
54
			<integer>17</integer>
54
			<integer>18</integer>
55 55
		</dict>
56 56
		<key>jsi.xcscheme_^#shared#^_</key>
57 57
		<dict>
58 58
			<key>isShown</key>
59 59
			<false/>
60 60
			<key>orderHint</key>
61
			<integer>40</integer>
61
			<integer>41</integer>
62 62
		</dict>
63 63
		<key>jsiexecutor-tvOS.xcscheme_^#shared#^_</key>
64 64
		<dict>
65 65
			<key>isShown</key>
66 66
			<false/>
67 67
			<key>orderHint</key>
68
			<integer>19</integer>
68
			<integer>20</integer>
69 69
		</dict>
70 70
		<key>jsiexecutor.xcscheme_^#shared#^_</key>
71 71
		<dict>
72 72
			<key>isShown</key>
73 73
			<false/>
74 74
			<key>orderHint</key>
75
			<integer>41</integer>
75
			<integer>42</integer>
76 76
		</dict>
77 77
		<key>jsinspector-tvOS.xcscheme_^#shared#^_</key>
78 78
		<dict>
79 79
			<key>isShown</key>
80 80
			<false/>
81 81
			<key>orderHint</key>
82
			<integer>8</integer>
82
			<integer>9</integer>
83 83
		</dict>
84 84
		<key>jsinspector.xcscheme_^#shared#^_</key>
85 85
		<dict>
86 86
			<key>isShown</key>
87 87
			<false/>
88 88
			<key>orderHint</key>
89
			<integer>38</integer>
89
			<integer>39</integer>
90 90
		</dict>
91 91
		<key>third-party-tvOS.xcscheme_^#shared#^_</key>
92 92
		<dict>
93 93
			<key>isShown</key>
94 94
			<false/>
95 95
			<key>orderHint</key>
96
			<integer>11</integer>
96
			<integer>12</integer>
97 97
		</dict>
98 98
		<key>third-party.xcscheme_^#shared#^_</key>
99 99
		<dict>
100 100
			<key>isShown</key>
101 101
			<false/>
102 102
			<key>orderHint</key>
103
			<integer>39</integer>
103
			<integer>40</integer>
104 104
		</dict>
105 105
		<key>yoga-tvOS.xcscheme_^#shared#^_</key>
106 106
		<dict>
@ -114,7 +114,7 @@
114 114
			<key>isShown</key>
115 115
			<false/>
116 116
			<key>orderHint</key>
117
			<integer>36</integer>
117
			<integer>37</integer>
118 118
		</dict>
119 119
	</dict>
120 120
	<key>SuppressBuildableAutocreation</key>

+ 2 - 2
display-center/Res/config/mobile-config.xml

@ -1,7 +1,7 @@
1 1
<?xml version="1.0" encoding="utf-8"?>
2 2
<configs>
3
    <config name="request_host" value="http://www.aiipu.com:8083"/>
4
<!--    <config name="request_host" value="http://192.168.1.171:8070"/>-->
3
<!--    <config name="request_host" value="http://www.aiipu.com:8083"/>-->
4
    <config name="request_host" value="http://192.168.1.171:8070"/>
5 5
    <config name="request_path" value="/show"/>
6 6
    <config name="request_servlet" value="/mobiledata"/>
7 7
    <config name="loading_page" value="Res/local/welcome.html"/>

+ 1 - 1
display-center/display-center.xcodeproj/xcuserdata/benny.xcuserdatad/xcschemes/xcschememanagement.plist

@ -7,7 +7,7 @@
7 7
		<key>display-center.xcscheme_^#shared#^_</key>
8 8
		<dict>
9 9
			<key>orderHint</key>
10
			<integer>20</integer>
10
			<integer>21</integer>
11 11
		</dict>
12 12
	</dict>
13 13
	<key>SuppressBuildableAutocreation</key>

+ 3 - 0
display-center/display-center.xcworkspace/contents.xcworkspacedata

@ -2,6 +2,9 @@
2 2
<Workspace
3 3
   version = "1.0">
4 4
   <FileRef
5
      location = "group:../IPUMobileFunc/IPUMobileFunc.xcodeproj">
6
   </FileRef>
7
   <FileRef
5 8
      location = "group:../../iOS/IPUMobile/IPUMobile.xcodeproj">
6 9
   </FileRef>
7 10
   <FileRef

BIN
display-center/display-center.xcworkspace/xcuserdata/benny.xcuserdatad/UserInterfaceState.xcuserstate


+ 16 - 0
display-center/display-center.xcworkspace/xcuserdata/benny.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@ -15,5 +15,21 @@
15 15
            stopOnStyle = "0">
16 16
         </BreakpointContent>
17 17
      </BreakpointProxy>
18
      <BreakpointProxy
19
         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
20
         <BreakpointContent
21
            uuid = "96042FEF-C38F-424A-A15C-5A24CA3AF003"
22
            shouldBeEnabled = "Yes"
23
            ignoreCount = "0"
24
            continueAfterRunningActions = "No"
25
            filePath = "../../iOS/IPUMobile/IPUMobile/Frame/Template/IPUTemplateMainViewController.m"
26
            startingColumnNumber = "9223372036854775807"
27
            endingColumnNumber = "9223372036854775807"
28
            startingLineNumber = "61"
29
            endingLineNumber = "61"
30
            landmarkName = "-checkUpateInfo"
31
            landmarkType = "7">
32
         </BreakpointContent>
33
      </BreakpointProxy>
18 34
   </Breakpoints>
19 35
</Bucket>

+ 2 - 0
display-center/display-center/AppDelegate+NetworkObserver.m

@ -24,6 +24,8 @@
24 24
        return;
25 25
    }
26 26
    
27
    
28
    
27 29
    UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"网络错误"
28 30
                                                                   message:@"网络不给力,请检查网络设置"
29 31
                                                            preferredStyle:UIAlertControllerStyleAlert];