ingMaskIntoConstraints="NO" id="0O4-xB-jPJ">
|
|
257
|
+ <rect key="frame" x="16" y="8" width="32" height="32"/>
|
|
|
258
|
+ </imageView>
|
|
|
259
|
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="给我评分" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="JAf-2j-KJO">
|
|
|
260
|
+ <rect key="frame" x="62" y="14" width="66" height="20"/>
|
|
|
261
|
+ <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
|
|
262
|
+ <fontDescription key="fontDescription" type="system" pointSize="16"/>
|
|
|
263
|
+ <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
|
|
264
|
+ <nil key="highlightedColor"/>
|
|
|
265
|
+ </label>
|
|
|
266
|
+ <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="列表箭头" translatesAutoresizingMaskIntoConstraints="NO" id="vLw-Zd-Mis">
|
|
|
267
|
+ <rect key="frame" x="349" y="6" width="24" height="36"/>
|
|
|
268
|
+ </imageView>
|
|
|
269
|
+ <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="FIE-jb-ZGu">
|
|
|
270
|
+ <rect key="frame" x="0.0" y="0.0" width="383" height="48"/>
|
|
|
271
|
+ </button>
|
|
|
272
|
+ </subviews>
|
|
|
273
|
+ <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
|
315
|
274
|
<constraints>
|
|
316
|
|
- <constraint firstAttribute="height" constant="0.5" id="A4X-Nh-oXs"/>
|
|
|
275
|
+ <constraint firstItem="vLw-Zd-Mis" firstAttribute="centerY" secondItem="EVY-h5-0pO" secondAttribute="centerY" id="1E7-1z-kZ7"/>
|
|
|
276
|
+ <constraint firstItem="0O4-xB-jPJ" firstAttribute="centerY" secondItem="EVY-h5-0pO" secondAttribute="centerY" id="ALT-hh-MTM"/>
|
|
|
277
|
+ <constraint firstItem="FIE-jb-ZGu" firstAttribute="leading" secondItem="EVY-h5-0pO" secondAttribute="leading" id="D6N-Si-qSV"/>
|
|
|
278
|
+ <constraint firstItem="JAf-2j-KJO" firstAttribute="centerY" secondItem="EVY-h5-0pO" secondAttribute="centerY" id="KPu-br-EtQ"/>
|
|
|
279
|
+ <constraint firstItem="FIE-jb-ZGu" firstAttribute="top" secondItem="EVY-h5-0pO" secondAttribute="top" id="b5a-HR-UrD"/>
|
|
|
280
|
+ <constraint firstItem="0O4-xB-jPJ" firstAttribute="leading" secondItem="EVY-h5-0pO" secondAttribute="leading" constant="16" id="cMg-7o-zGG"/>
|
|
|
281
|
+ <constraint firstAttribute="trailing" secondItem="vLw-Zd-Mis" secondAttribute="trailing" constant="10" id="dMD-tt-A3K"/>
|
|
|
282
|
+ <constraint firstAttribute="height" constant="48" id="fsu-NH-yPo"/>
|
|
|
283
|
+ <constraint firstAttribute="bottom" secondItem="FIE-jb-ZGu" secondAttribute="bottom" id="jvn-QK-tPP"/>
|
|
|
284
|
+ <constraint firstAttribute="trailing" secondItem="FIE-jb-ZGu" secondAttribute="trailing" id="rKv-jZ-8C3"/>
|
|
|
285
|
+ <constraint firstItem="JAf-2j-KJO" firstAttribute="leading" secondItem="0O4-xB-jPJ" secondAttribute="trailing" constant="14" id="zGg-au-jbn"/>
|
|
317
|
286
|
</constraints>
|
|
318
|
287
|
</view>
|
|
319
|
|
- <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="8wT-3F-YEB">
|
|
320
|
|
- <rect key="frame" x="62" y="47.5" width="321" height="0.5"/>
|
|
321
|
|
- <color key="backgroundColor" red="0.90588235289999997" green="0.90588235289999997" blue="0.90588235289999997" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
|
|
288
|
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="hN9-6g-QCB" userLabel="User Agreement View">
|
|
|
289
|
+ <rect key="frame" x="0.0" y="96" width="383" height="48"/>
|
|
|
290
|
+ <subviews>
|
|
|
291
|
+ <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="about-userAgreement" translatesAutoresizingMaskIntoConstraints="NO" id="u6G-8X-fqc">
|
|
|
292
|
+ <rect key="frame" x="16" y="8" width="32" height="32"/>
|
|
|
293
|
+ </imageView>
|
|
|
294
|
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="用户协议" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="COm-64-2lk">
|
|
|
295
|
+ <rect key="frame" x="62" y="14" width="66" height="20"/>
|
|
|
296
|
+ <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
|
|
297
|
+ <fontDescription key="fontDescription" type="system" pointSize="16"/>
|
|
|
298
|
+ <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
|
|
299
|
+ <nil key="highlightedColor"/>
|
|
|
300
|
+ </label>
|
|
|
301
|
+ <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="列表箭头" translatesAutoresizingMaskIntoConstraints="NO" id="mhJ-Uj-tdj">
|
|
|
302
|
+ <rect key="frame" x="349" y="6" width="24" height="36"/>
|
|
|
303
|
+ </imageView>
|
|
|
304
|
+ <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="VGv-oO-leT">
|
|
|
305
|
+ <rect key="frame" x="0.0" y="0.0" width="383" height="48"/>
|
|
|
306
|
+ </button>
|
|
|
307
|
+ </subviews>
|
|
|
308
|
+ <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
|
322
|
309
|
<constraints>
|
|
323
|
|
- <constraint firstAttribute="height" constant="0.5" id="z9x-v3-pPw"/>
|
|
|
310
|
+ <constraint firstAttribute="bottom" secondItem="VGv-oO-leT" secondAttribute="bottom" id="0aT-Bt-dMd"/>
|
|
|
311
|
+ <constraint firstItem="u6G-8X-fqc" firstAttribute="leading" secondItem="hN9-6g-QCB" secondAttribute="leading" constant="16" id="624-Sr-wFs"/>
|
|
|
312
|
+ <constraint firstAttribute="trailing" secondItem="mhJ-Uj-tdj" secondAttribute="trailing" constant="10" id="EuA-km-rpD"/>
|
|
|
313
|
+ <constraint firstItem="VGv-oO-leT" firstAttribute="leading" secondItem="hN9-6g-QCB" secondAttribute="leading" id="OEU-mG-OlU"/>
|
|
|
314
|
+ <constraint firstAttribute="height" constant="48" id="OcV-Pt-Pdy"/>
|
|
|
315
|
+ <constraint firstAttribute="trailing" secondItem="VGv-oO-leT" secondAttribute="trailing" id="RGF-b4-y2h"/>
|
|
|
316
|
+ <constraint firstItem="COm-64-2lk" firstAttribute="centerY" secondItem="hN9-6g-QCB" secondAttribute="centerY" id="Uku-vk-bBm"/>
|
|
|
317
|
+ <constraint firstItem="COm-64-2lk" firstAttribute="leading" secondItem="u6G-8X-fqc" secondAttribute="trailing" constant="14" id="k2Q-Gl-cvs"/>
|
|
|
318
|
+ <constraint firstItem="u6G-8X-fqc" firstAttribute="centerY" secondItem="hN9-6g-QCB" secondAttribute="centerY" id="mCV-Uh-zpC"/>
|
|
|
319
|
+ <constraint firstItem="VGv-oO-leT" firstAttribute="top" secondItem="hN9-6g-QCB" secondAttribute="top" id="quD-eC-apC"/>
|
|
|
320
|
+ <constraint firstItem="mhJ-Uj-tdj" firstAttribute="centerY" secondItem="hN9-6g-QCB" secondAttribute="centerY" id="z8z-9u-ZAm"/>
|
|
324
|
321
|
</constraints>
|
|
325
|
322
|
</view>
|
|
326
|
323
|
</subviews>
|
|
327
|
324
|
<color key="backgroundColor" red="0.94117647059999998" green="0.94117647059999998" blue="0.94117647059999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
|
328
|
325
|
<constraints>
|
|
329
|
|
- <constraint firstItem="8wT-3F-YEB" firstAttribute="bottom" secondItem="bc2-xm-kqy" secondAttribute="bottom" id="65g-jn-hcT"/>
|
|
330
|
|
- <constraint firstAttribute="trailing" secondItem="8wT-3F-YEB" secondAttribute="trailing" id="6JQ-JS-Ip1"/>
|
|
331
|
|
- <constraint firstItem="Nm2-xx-B3w" firstAttribute="leading" secondItem="kL5-iA-2wt" secondAttribute="leading" constant="16" id="84L-jD-Pw8"/>
|
|
332
|
|
- <constraint firstItem="u4d-zF-dTA" firstAttribute="trailing" secondItem="kL5-iA-2wt" secondAttribute="trailing" constant="-10" id="COq-GW-r7X"/>
|
|
333
|
|
- <constraint firstItem="CK4-vq-4yz" firstAttribute="centerY" secondItem="ibz-oi-jAe" secondAttribute="centerY" id="CjC-5P-Asn"/>
|
|
334
|
|
- <constraint firstItem="CYk-cu-pHl" firstAttribute="centerY" secondItem="pVB-Uy-xXH" secondAttribute="centerY" id="Dls-Sb-Shh"/>
|
|
335
|
|
- <constraint firstAttribute="trailing" secondItem="UVV-rB-BFU" secondAttribute="trailing" id="GMD-4v-LKH"/>
|
|
336
|
|
- <constraint firstItem="kL5-iA-2wt" firstAttribute="top" secondItem="bc2-xm-kqy" secondAttribute="bottom" id="HFK-QN-Bvm"/>
|
|
337
|
|
- <constraint firstItem="kxq-PT-sYi" firstAttribute="centerY" secondItem="CK4-vq-4yz" secondAttribute="centerY" id="Heg-aa-ECd"/>
|
|
338
|
|
- <constraint firstItem="u4d-zF-dTA" firstAttribute="centerY" secondItem="kL5-iA-2wt" secondAttribute="centerY" id="Iak-6n-Gud"/>
|
|
339
|
|
- <constraint firstItem="kL5-iA-2wt" firstAttribute="leading" secondItem="bjC-jQ-LOw" secondAttribute="leading" id="Jgh-wt-u9c"/>
|
|
340
|
|
- <constraint firstAttribute="trailing" secondItem="kL5-iA-2wt" secondAttribute="trailing" id="Jwz-vj-QMP"/>
|
|
341
|
|
- <constraint firstItem="bc2-xm-kqy" firstAttribute="leading" secondItem="bjC-jQ-LOw" secondAttribute="leading" id="NOF-oM-tG3"/>
|
|
342
|
|
- <constraint firstAttribute="trailing" secondItem="ibz-oi-jAe" secondAttribute="trailing" id="Nuv-y4-nkd"/>
|
|
343
|
|
- <constraint firstItem="UVV-rB-BFU" firstAttribute="bottom" secondItem="kL5-iA-2wt" secondAttribute="bottom" id="OtG-7N-4wa"/>
|
|
344
|
|
- <constraint firstItem="UVV-rB-BFU" firstAttribute="leading" secondItem="Sh6-Re-Ry3" secondAttribute="leading" id="Pdb-aN-6A1"/>
|
|
345
|
|
- <constraint firstItem="bc2-xm-kqy" firstAttribute="top" secondItem="bjC-jQ-LOw" secondAttribute="top" id="VaL-tC-Yca"/>
|
|
346
|
|
- <constraint firstItem="pVB-Uy-xXH" firstAttribute="leading" secondItem="bc2-xm-kqy" secondAttribute="leading" constant="16" id="ZJr-HC-Ewa"/>
|
|
347
|
|
- <constraint firstItem="pVB-Uy-xXH" firstAttribute="centerY" secondItem="bc2-xm-kqy" secondAttribute="centerY" id="bb6-Xu-bu5"/>
|
|
348
|
|
- <constraint firstItem="YSe-Bt-0NL" firstAttribute="trailing" secondItem="ibz-oi-jAe" secondAttribute="trailing" constant="-10" id="blI-SI-Sre"/>
|
|
349
|
|
- <constraint firstItem="ibz-oi-jAe" firstAttribute="top" secondItem="kL5-iA-2wt" secondAttribute="bottom" id="gpD-T1-aQn"/>
|
|
350
|
|
- <constraint firstItem="MgR-ta-3jg" firstAttribute="centerY" secondItem="bc2-xm-kqy" secondAttribute="centerY" id="hhY-tM-Yro"/>
|
|
351
|
|
- <constraint firstItem="ibz-oi-jAe" firstAttribute="leading" secondItem="bjC-jQ-LOw" secondAttribute="leading" id="hko-xh-GEk"/>
|
|
352
|
|
- <constraint firstAttribute="trailing" secondItem="bc2-xm-kqy" secondAttribute="trailing" id="j9a-UG-jWX"/>
|
|
353
|
|
- <constraint firstItem="Sh6-Re-Ry3" firstAttribute="leading" secondItem="Nm2-xx-B3w" secondAttribute="trailing" constant="14" id="jaA-Ms-RwN"/>
|
|
354
|
|
- <constraint firstItem="8wT-3F-YEB" firstAttribute="leading" secondItem="CYk-cu-pHl" secondAttribute="leading" id="neI-9C-tLD"/>
|
|
355
|
|
- <constraint firstItem="CK4-vq-4yz" firstAttribute="leading" secondItem="ibz-oi-jAe" secondAttribute="leading" constant="16" id="owu-tC-JjZ"/>
|
|
356
|
|
- <constraint firstItem="CYk-cu-pHl" firstAttribute="leading" secondItem="pVB-Uy-xXH" secondAttribute="trailing" constant="14" id="rAe-Y2-twj"/>
|
|
357
|
|
- <constraint firstItem="YSe-Bt-0NL" firstAttribute="centerY" secondItem="ibz-oi-jAe" secondAttribute="centerY" id="rIX-lQ-ZRW"/>
|
|
358
|
|
- <constraint firstItem="MgR-ta-3jg" firstAttribute="trailing" secondItem="bc2-xm-kqy" secondAttribute="trailing" constant="-10" id="rej-aa-eUr"/>
|
|
359
|
|
- <constraint firstItem="Sh6-Re-Ry3" firstAttribute="centerY" secondItem="Nm2-xx-B3w" secondAttribute="centerY" id="ubQ-U7-gLQ"/>
|
|
360
|
|
- <constraint firstItem="Nm2-xx-B3w" firstAttribute="centerY" secondItem="kL5-iA-2wt" secondAttribute="centerY" id="vGp-DO-BSU"/>
|
|
361
|
|
- <constraint firstItem="kxq-PT-sYi" firstAttribute="leading" secondItem="CK4-vq-4yz" secondAttribute="trailing" constant="14" id="x9l-O0-sX8"/>
|
|
|
326
|
+ <constraint firstItem="mae-VW-ed0" firstAttribute="leading" secondItem="bjC-jQ-LOw" secondAttribute="leading" id="25m-1u-PlX"/>
|
|
|
327
|
+ <constraint firstAttribute="trailing" secondItem="EVY-h5-0pO" secondAttribute="trailing" id="Cl6-If-4fD"/>
|
|
|
328
|
+ <constraint firstItem="EVY-h5-0pO" firstAttribute="leading" secondItem="bjC-jQ-LOw" secondAttribute="leading" id="Cmx-5f-fSM"/>
|
|
|
329
|
+ <constraint firstItem="EVY-h5-0pO" firstAttribute="top" secondItem="mae-VW-ed0" secondAttribute="bottom" id="Kg3-vC-Ohr"/>
|
|
|
330
|
+ <constraint firstAttribute="trailing" secondItem="mae-VW-ed0" secondAttribute="trailing" id="Qtq-6O-uU3"/>
|
|
|
331
|
+ <constraint firstItem="hN9-6g-QCB" firstAttribute="top" secondItem="EVY-h5-0pO" secondAttribute="bottom" id="SCp-cp-eDW"/>
|
|
|
332
|
+ <constraint firstItem="hN9-6g-QCB" firstAttribute="leading" secondItem="bjC-jQ-LOw" secondAttribute="leading" id="Ufj-Mi-XEY"/>
|
|
|
333
|
+ <constraint firstAttribute="trailing" secondItem="hN9-6g-QCB" secondAttribute="trailing" id="YLN-9T-LED"/>
|
|
|
334
|
+ <constraint firstItem="mae-VW-ed0" firstAttribute="top" secondItem="bjC-jQ-LOw" secondAttribute="top" id="qXw-XK-Fq0"/>
|
|
362
|
335
|
</constraints>
|
|
363
|
336
|
</view>
|
|
|
337
|
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Copyright@pai.ai" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="inH-WZ-fdD">
|
|
|
338
|
+ <rect key="frame" x="146.5" y="649" width="82" height="12"/>
|
|
|
339
|
+ <color key="backgroundColor" red="0.94117647059999998" green="0.94117647059999998" blue="0.94117647059999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
|
|
340
|
+ <fontDescription key="fontDescription" type="system" pointSize="10"/>
|
|
|
341
|
+ <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
|
|
342
|
+ <nil key="highlightedColor"/>
|
|
|
343
|
+ </label>
|
|
|
344
|
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="版本:1.0" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="bEV-QT-Egq">
|
|
|
345
|
+ <rect key="frame" x="161" y="628.5" width="53" height="14.5"/>
|
|
|
346
|
+ <color key="backgroundColor" red="0.94117647059999998" green="0.94117647059999998" blue="0.94117647059999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
|
|
347
|
+ <fontDescription key="fontDescription" type="system" pointSize="12"/>
|
|
|
348
|
+ <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
|
|
349
|
+ <nil key="highlightedColor"/>
|
|
|
350
|
+ </label>
|
|
364
|
351
|
</subviews>
|
|
365
|
352
|
<color key="backgroundColor" red="0.94117647058823528" green="0.94117647058823528" blue="0.94117647058823528" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
|
366
|
353
|
<constraints>
|
|
367
|
354
|
<constraint firstItem="bjC-jQ-LOw" firstAttribute="leading" secondItem="gzV-sh-iNN" secondAttribute="leadingMargin" constant="-20" id="4XL-Mn-Bda"/>
|
|
368
|
355
|
<constraint firstAttribute="bottom" secondItem="bjC-jQ-LOw" secondAttribute="bottom" id="7cS-3o-xis"/>
|
|
369
|
356
|
<constraint firstItem="bjC-jQ-LOw" firstAttribute="centerX" secondItem="szY-tb-XAT" secondAttribute="centerX" id="B1z-7x-Vdk"/>
|
|
|
357
|
+ <constraint firstItem="inH-WZ-fdD" firstAttribute="centerX" secondItem="gzV-sh-iNN" secondAttribute="centerX" id="BGs-5i-uoA"/>
|
|
|
358
|
+ <constraint firstItem="bEV-QT-Egq" firstAttribute="centerX" secondItem="gzV-sh-iNN" secondAttribute="centerX" id="CGs-tu-a6G"/>
|
|
|
359
|
+ <constraint firstItem="szY-tb-XAT" firstAttribute="bottom" secondItem="inH-WZ-fdD" secondAttribute="bottom" constant="6" id="XIG-RN-kfd"/>
|
|
370
|
360
|
<constraint firstItem="bjC-jQ-LOw" firstAttribute="top" secondItem="Str-BX-Lky" secondAttribute="bottom" id="dKZ-iN-vPM"/>
|
|
371
|
361
|
<constraint firstItem="szY-tb-XAT" firstAttribute="trailing" secondItem="Str-BX-Lky" secondAttribute="trailing" id="fpg-jU-lLU"/>
|
|
|
362
|
+ <constraint firstItem="inH-WZ-fdD" firstAttribute="top" secondItem="bEV-QT-Egq" secondAttribute="bottom" constant="6" id="gQZ-xs-1i5"/>
|
|
372
|
363
|
<constraint firstItem="Str-BX-Lky" firstAttribute="top" secondItem="szY-tb-XAT" secondAttribute="top" id="n5h-V7-STS"/>
|
|
373
|
364
|
<constraint firstAttribute="trailingMargin" secondItem="bjC-jQ-LOw" secondAttribute="trailing" constant="-20" id="wJd-7K-65L"/>
|
|
374
|
365
|
<constraint firstItem="Str-BX-Lky" firstAttribute="leading" secondItem="szY-tb-XAT" secondAttribute="leading" id="x2e-5M-bfE"/>
|
|
|
|
@@ -377,14 +368,15 @@
|
|
377
|
368
|
</view>
|
|
378
|
369
|
<navigationItem key="navigationItem" id="plF-EP-Z5g"/>
|
|
379
|
370
|
<connections>
|
|
380
|
|
- <outlet property="scoreBtn" destination="kL5-iA-2wt" id="zao-TW-Rnn"/>
|
|
381
|
|
- <outlet property="scoreLabel" destination="Sh6-Re-Ry3" id="hBp-gS-PEs"/>
|
|
|
371
|
+ <outlet property="contactUsBtn" destination="L1g-sb-a5F" id="t0g-Wx-dry"/>
|
|
|
372
|
+ <outlet property="scoreBtn" destination="FIE-jb-ZGu" id="nmA-Dz-Bwe"/>
|
|
|
373
|
+ <outlet property="userAgreementBtn" destination="VGv-oO-leT" id="Dzs-He-hds"/>
|
|
382
|
374
|
<outlet property="versionLabel" destination="bEV-QT-Egq" id="uQ9-IF-ImJ"/>
|
|
383
|
375
|
</connections>
|
|
384
|
376
|
</viewController>
|
|
385
|
377
|
<placeholder placeholderIdentifier="IBFirstResponder" id="i5Y-H4-CYK" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
|
386
|
378
|
</objects>
|
|
387
|
|
- <point key="canvasLocation" x="144" y="926.53673163418296"/>
|
|
|
379
|
+ <point key="canvasLocation" x="143.19999999999999" y="926.08695652173924"/>
|
|
388
|
380
|
</scene>
|
|
389
|
381
|
<!--Mine Order View Controller-->
|
|
390
|
382
|
<scene sceneID="3e4-t5-KsN">
|
|
|
|
@@ -632,10 +624,10 @@
|
|
632
|
624
|
</scenes>
|
|
633
|
625
|
<resources>
|
|
634
|
626
|
<image name="Logo" width="140" height="140"/>
|
|
|
627
|
+ <image name="about-contactUs" width="32" height="32"/>
|
|
|
628
|
+ <image name="about-score" width="32" height="32"/>
|
|
|
629
|
+ <image name="about-userAgreement" width="32" height="32"/>
|
|
635
|
630
|
<image name="navigation-background" width="12" height="132"/>
|
|
636
|
|
- <image name="关于-用户协议 " width="32" height="32"/>
|
|
637
|
|
- <image name="关于-联系我们" width="32" height="32"/>
|
|
638
|
|
- <image name="关于-评分" width="32" height="32"/>
|
|
639
|
631
|
<image name="列表箭头" width="24" height="36"/>
|
|
640
|
632
|
<image name="注销切图" width="32" height="32"/>
|
|
641
|
633
|
<image name="默认头像" width="240" height="240"/>
|
|
|
|
@@ -9,51 +9,66 @@
|
|
9
|
9
|
import UIKit
|
|
10
|
10
|
import PaiaiDataKit
|
|
11
|
11
|
import PaiaiUIKit
|
|
|
12
|
+import RxSwift
|
|
12
|
13
|
|
|
13
|
|
-struct AboutWebModel {
|
|
14
|
|
-
|
|
15
|
|
-}
|
|
16
|
14
|
|
|
17
|
15
|
final class MineAboutViewController: UIViewController {
|
|
18
|
16
|
|
|
19
|
|
- // MARK: Storyboard property
|
|
20
|
|
- @IBOutlet var versionLabel: UILabel!
|
|
|
17
|
+ @IBOutlet weak var contactUsBtn: UIButton!
|
|
21
|
18
|
@IBOutlet weak var scoreBtn: UIButton!
|
|
22
|
|
- @IBOutlet weak var scoreLabel: UILabel!
|
|
23
|
|
-
|
|
|
19
|
+ @IBOutlet weak var userAgreementBtn: UIButton!
|
|
|
20
|
+ @IBOutlet var versionLabel: UILabel!
|
|
|
21
|
+
|
|
|
22
|
+ private var disposeBag = DisposeBag()
|
|
|
23
|
+
|
|
24
|
24
|
// MARK: view function
|
|
25
|
25
|
override func viewDidLoad() {
|
|
26
|
26
|
super.viewDidLoad()
|
|
27
|
|
-
|
|
|
27
|
+
|
|
28
|
28
|
// scoreLabel.text = UserDefaults.Account.bool(forKey: .isAudit) ? "敬请期待" : "给我评分"
|
|
29
|
29
|
// scoreBtn.isEnabled = !(UserDefaults.Account.bool(forKey: .isAudit))
|
|
|
30
|
+ title = "关于"
|
|
30
|
31
|
versionLabel.text = Bundle.main.infoDictionary?["CFBundleShortVersionString"] as? String
|
|
|
32
|
+ bindGestures()
|
|
31
|
33
|
}
|
|
|
34
|
+}
|
|
32
|
35
|
|
|
33
|
|
- override func viewWillAppear(_ animated: Bool) {
|
|
34
|
|
- super.viewWillAppear(true)
|
|
35
|
|
-// titleWithbackBar = "关于"
|
|
|
36
|
+fileprivate extension MineAboutViewController {
|
|
|
37
|
+ func bindGestures() {
|
|
|
38
|
+ bindGestureToContactUsAction()
|
|
|
39
|
+ bindGestureToScoreAction()
|
|
|
40
|
+ bindGestureToUserAgreementAction()
|
|
36
|
41
|
}
|
|
37
|
|
-
|
|
38
|
|
- // MARK: Storyboard button function
|
|
39
|
|
- @IBAction func giveFen() {
|
|
40
|
|
- guard let url = URL(string: "https://itunes.apple.com/cn/app/pai-aipaiai/id1163960351?mt=8") else {
|
|
41
|
|
- return
|
|
42
|
|
- }
|
|
43
|
|
- UIApplication.shared.openURL(url)
|
|
|
42
|
+
|
|
|
43
|
+ func bindGestureToContactUsAction() {
|
|
|
44
|
+ contactUsBtn.rx.tap
|
|
|
45
|
+ .asObservable()
|
|
|
46
|
+ .subscribe { (_) in
|
|
|
47
|
+ let webVC = WebViewController(title: "联系我们",
|
|
|
48
|
+ path: "https://pai.ai/page/contact_us")
|
|
|
49
|
+ self.pushViewController(webVC)
|
|
|
50
|
+ }.disposed(by: disposeBag)
|
|
44
|
51
|
}
|
|
45
|
|
- @IBAction func contactUs(_ sender: UIButton) {
|
|
46
|
|
-// let about = UIStoryboard.mine.instantiateController(AboutWebViewController.self)
|
|
47
|
|
-// about.url = "http://xfoto.com.cn/page/contact_us"
|
|
48
|
|
-// about.title = "联系我们"
|
|
49
|
|
-// navigationController?.pushViewController(about, animated: true)
|
|
|
52
|
+
|
|
|
53
|
+ func bindGestureToScoreAction() {
|
|
|
54
|
+ scoreBtn.rx.tap
|
|
|
55
|
+ .asObservable()
|
|
|
56
|
+ .subscribe { (_) in
|
|
|
57
|
+ guard let url = URL(string: "https://itunes.apple.com/cn/app/pai-aipaiai/id1163960351?mt=8") else {
|
|
|
58
|
+ return
|
|
|
59
|
+ }
|
|
|
60
|
+ UIApplication.shared.open(url, options: [:], completionHandler: nil)
|
|
|
61
|
+ }.disposed(by: disposeBag)
|
|
50
|
62
|
}
|
|
51
|
|
-
|
|
52
|
|
- @IBAction func userAgreement(_ sender: UIButton) {
|
|
53
|
|
-// let about = UIStoryboard.mine.instantiateController(AboutWebViewController.self)
|
|
54
|
|
-// about.url = "http://xfoto.com.cn/page/user_agreement"
|
|
55
|
|
-// about.title = "用户协议"
|
|
56
|
|
-// navigationController?.pushViewController(about, animated: true)
|
|
|
63
|
+
|
|
|
64
|
+ func bindGestureToUserAgreementAction() {
|
|
|
65
|
+ userAgreementBtn.rx.tap
|
|
|
66
|
+ .asObservable()
|
|
|
67
|
+ .subscribe { (_) in
|
|
|
68
|
+ let webVC = WebViewController(title: "用户协议",
|
|
|
69
|
+ path: "https://pai.ai/page/user_agreement")
|
|
|
70
|
+ self.pushViewController(webVC)
|
|
|
71
|
+ }.disposed(by: disposeBag)
|
|
57
|
72
|
}
|
|
58
|
73
|
}
|
|
59
|
74
|
|
|
|
|
@@ -13,12 +13,12 @@ import PaiaiUIKit
|
|
13
|
13
|
class MineCoordinator: Coordinator {
|
|
14
|
14
|
|
|
15
|
15
|
let mineViewController: MineViewController
|
|
16
|
|
- let containerViewController: ContainerViewController
|
|
|
16
|
+ let navigationController: UINavigationController
|
|
17
|
17
|
// let shareUserInfoViewModel
|
|
18
|
18
|
|
|
19
|
|
- init(_ mineViewController: MineViewController, containerViewController: ContainerViewController) {
|
|
|
19
|
+ init(_ mineViewController: MineViewController, containerViewController: UINavigationController) {
|
|
20
|
20
|
self.mineViewController = mineViewController
|
|
21
|
|
- self.containerViewController = containerViewController
|
|
|
21
|
+ self.navigationController = navigationController
|
|
22
|
22
|
self.mineViewController.delegate = self
|
|
23
|
23
|
}
|
|
24
|
24
|
|
|
|
|
@@ -39,6 +39,7 @@ extension MineCoordinator: MineViewControllerDelegate {
|
|
39
|
39
|
switch item {
|
|
40
|
40
|
case .group:
|
|
41
|
41
|
let vc = makeMineGroupViewController()
|
|
|
42
|
+ navigationController
|
|
42
|
43
|
containerViewController.pushViewController(vc)
|
|
43
|
44
|
case .order:
|
|
44
|
45
|
let vc = makeMineOrderViewController()
|
|
|
|
@@ -77,6 +78,7 @@ fileprivate extension MineCoordinator {
|
|
77
|
78
|
|
|
78
|
79
|
func makeMineFeedbackViewController() -> MineFeedbackViewController {
|
|
79
|
80
|
let vc = UIStoryboard.mine.instantiateController(MineFeedbackViewController.self)
|
|
|
81
|
+ vc.feedbackAPI = FeedbackRemoteAPI()
|
|
80
|
82
|
return vc
|
|
81
|
83
|
}
|
|
82
|
84
|
|
|
|
|
@@ -19,20 +19,24 @@ final class MineFeedbackViewController: UIViewController {
|
|
19
|
19
|
@IBOutlet var sendBtn: UIButton!
|
|
20
|
20
|
fileprivate let disposeBag = DisposeBag()
|
|
21
|
21
|
|
|
22
|
|
-// var viewModel: MineFeedbackViewModel!
|
|
|
22
|
+ var feedbackAPI: FeedbackRemoteAPI!
|
|
|
23
|
+
|
|
23
|
24
|
// MARK: view function
|
|
24
|
25
|
override func viewDidLoad() {
|
|
25
|
26
|
super.viewDidLoad()
|
|
|
27
|
+ title = "意见反馈"
|
|
26
|
28
|
textView.placeholder = "您的建议是我们前进的动力"
|
|
27
|
|
- configurationRx()
|
|
28
|
|
- }
|
|
29
|
|
-
|
|
30
|
|
- func configurationRx() {
|
|
31
|
|
-
|
|
|
29
|
+ bindTextViewToSendBtn()
|
|
32
|
30
|
}
|
|
33
|
31
|
|
|
34
|
32
|
@IBAction func sendFeedBack() {
|
|
35
|
|
-// viewModel.submit(content)
|
|
|
33
|
+ feedbackAPI.submit(text: textView.text).subscribe(onCompleted: {[weak self] in
|
|
|
34
|
+ guard let `self` = self else { return }
|
|
|
35
|
+ self.popController()
|
|
|
36
|
+ Toast.show(message: "感谢您的建议")
|
|
|
37
|
+ }) { (error) in
|
|
|
38
|
+
|
|
|
39
|
+ }.disposed(by: disposeBag)
|
|
36
|
40
|
}
|
|
37
|
41
|
|
|
38
|
42
|
@IBAction func tap() {
|