Commit 66f62debace91f3c35b6c9c96825eaf74b7dc366

Authored by 葛建军
1 parent 5b0c5e90
Exists in newLive

首页界面间距调整,微课首页界面搭建及数据填充。

YouerLiveVideo/YouerLiveVideo.xcodeproj/project.pbxproj
... ... @@ -139,6 +139,7 @@
139 139 BF6977971E2DEC98006FA934 /* loginBackGround.png in Resources */ = {isa = PBXBuildFile; fileRef = BF6977941E2DEC98006FA934 /* loginBackGround.png */; };
140 140 BF6977981E2DEC98006FA934 /* userId.png in Resources */ = {isa = PBXBuildFile; fileRef = BF6977951E2DEC98006FA934 /* userId.png */; };
141 141 BF6977991E2DEC98006FA934 /* userPassword.png in Resources */ = {isa = PBXBuildFile; fileRef = BF6977961E2DEC98006FA934 /* userPassword.png */; };
  142 + BF7722F31ED283D400226D44 /* FilterViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF7722F21ED283D400226D44 /* FilterViewController.swift */; };
142 143 BF7B75961E305A6D0011D5C7 /* MJRefreshAutoFooter.m in Sources */ = {isa = PBXBuildFile; fileRef = BF7B756A1E305A6D0011D5C7 /* MJRefreshAutoFooter.m */; };
143 144 BF7B75971E305A6D0011D5C7 /* MJRefreshBackFooter.m in Sources */ = {isa = PBXBuildFile; fileRef = BF7B756C1E305A6D0011D5C7 /* MJRefreshBackFooter.m */; };
144 145 BF7B75981E305A6D0011D5C7 /* MJRefreshComponent.m in Sources */ = {isa = PBXBuildFile; fileRef = BF7B756E1E305A6D0011D5C7 /* MJRefreshComponent.m */; };
... ... @@ -458,6 +459,7 @@
458 459 BF6977941E2DEC98006FA934 /* loginBackGround.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = loginBackGround.png; sourceTree = "<group>"; };
459 460 BF6977951E2DEC98006FA934 /* userId.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = userId.png; sourceTree = "<group>"; };
460 461 BF6977961E2DEC98006FA934 /* userPassword.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = userPassword.png; sourceTree = "<group>"; };
  462 + BF7722F21ED283D400226D44 /* FilterViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FilterViewController.swift; sourceTree = "<group>"; };
461 463 BF7B75691E305A6D0011D5C7 /* MJRefreshAutoFooter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MJRefreshAutoFooter.h; sourceTree = "<group>"; };
462 464 BF7B756A1E305A6D0011D5C7 /* MJRefreshAutoFooter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MJRefreshAutoFooter.m; sourceTree = "<group>"; };
463 465 BF7B756B1E305A6D0011D5C7 /* MJRefreshBackFooter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MJRefreshBackFooter.h; sourceTree = "<group>"; };
... ... @@ -620,6 +622,7 @@
620 622 isa = PBXGroup;
621 623 children = (
622 624 5904FC471ECA8B8C00E631FF /* ResourceViewController.swift */,
  625 + BF7722F21ED283D400226D44 /* FilterViewController.swift */,
623 626 59AE3DFA1ECECD7D003E2C62 /* LiveInforViewController.swift */,
624 627 59AE3DFC1ECED5B1003E2C62 /* MoivePlayerViewController.swift */,
625 628 597185B41ECA990C00D7F478 /* Resource.storyboard */,
... ... @@ -1558,6 +1561,7 @@
1558 1561 BF25DFF91DDAA36A003EC0C1 /* NSImage+WebCache.m in Sources */,
1559 1562 BF8E52EE1ECFD16000E472E8 /* RankingTableViewController.swift in Sources */,
1560 1563 59F8014F1DD2C7AD000A78B0 /* AppDelegate.swift in Sources */,
  1564 + BF7722F31ED283D400226D44 /* FilterViewController.swift in Sources */,
1561 1565 BF25DFED1DDAA36A003EC0C1 /* ResponseSerialization.swift in Sources */,
1562 1566 BF25E0031DDAA36A003EC0C1 /* UIImage+GIF.m in Sources */,
1563 1567 BFBB83E91ECC445D008B404B /* RegisterViewController.swift in Sources */,
... ...
YouerLiveVideo/YouerLiveVideo.xcodeproj/project.xcworkspace/xcuserdata/jun.xcuserdatad/UserInterfaceState.xcuserstate
No preview for this file type
YouerLiveVideo/YouerLiveVideo.xcodeproj/xcuserdata/jun.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
... ... @@ -2,22 +2,4 @@
2 2 <Bucket
3 3 type = "1"
4 4 version = "2.0">
5   - <Breakpoints>
6   - <BreakpointProxy
7   - BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
8   - <BreakpointContent
9   - shouldBeEnabled = "Yes"
10   - ignoreCount = "0"
11   - continueAfterRunningActions = "No"
12   - filePath = "YouerLiveVideo/controllers/User/UserCenter/RegisterViewController.swift"
13   - timestampString = "516767766.610948"
14   - startingColumnNumber = "9223372036854775807"
15   - endingColumnNumber = "9223372036854775807"
16   - startingLineNumber = "85"
17   - endingLineNumber = "85"
18   - landmarkName = "registerBtnAction(_:)"
19   - landmarkType = "7">
20   - </BreakpointContent>
21   - </BreakpointProxy>
22   - </Breakpoints>
23 5 </Bucket>
... ...
YouerLiveVideo/YouerLiveVideo/Base.lproj/Main.storyboard
... ... @@ -11,26 +11,7 @@
11 11 <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
12 12 </dependencies>
13 13 <scenes>
14   - <!--微课-->
15   - <scene sceneID="mq3-Na-12P">
16   - <objects>
17   - <viewController title="微课" id="QLA-FR-CcL" customClass="MicroCourseViewController" customModule="YouerLiveVideo" customModuleProvider="target" sceneMemberID="viewController">
18   - <layoutGuides>
19   - <viewControllerLayoutGuide type="top" id="d3O-ta-bda"/>
20   - <viewControllerLayoutGuide type="bottom" id="QdI-Tc-eF8"/>
21   - </layoutGuides>
22   - <view key="view" contentMode="scaleToFill" id="Sx6-eB-DOo">
23   - <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
24   - <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
25   - <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
26   - </view>
27   - <navigationItem key="navigationItem" id="tzJ-xv-YCb"/>
28   - </viewController>
29   - <placeholder placeholderIdentifier="IBFirstResponder" id="ZVI-J2-A73" userLabel="First Responder" sceneMemberID="firstResponder"/>
30   - </objects>
31   - <point key="canvasLocation" x="-340" y="2113"/>
32   - </scene>
33   - <!--Resource View Controller-->
  14 + <!--资源-->
34 15 <scene sceneID="NfM-rG-voH">
35 16 <objects>
36 17 <viewController id="xEc-U1-QCp" customClass="ResourceViewController" customModule="YouerLiveVideo" customModuleProvider="target" sceneMemberID="viewController">
... ... @@ -60,6 +41,9 @@
60 41 <state key="normal" title="筛选" image="starLive">
61 42 <color key="titleColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
62 43 </state>
  44 + <connections>
  45 + <action selector="jumpFilterVCAction:" destination="xEc-U1-QCp" eventType="touchUpInside" id="dlS-PP-Koh"/>
  46 + </connections>
63 47 </button>
64 48 <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="a7C-jD-YSJ">
65 49 <rect key="frame" x="245" y="14" width="57" height="22"/>
... ... @@ -81,15 +65,20 @@
81 65 <constraint firstItem="mgQ-3C-amN" firstAttribute="leading" secondItem="za5-9d-anp" secondAttribute="leading" constant="8" id="yW6-qE-tfE"/>
82 66 </constraints>
83 67 </view>
84   - <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="none" rowHeight="143" sectionHeaderHeight="28" sectionFooterHeight="28" translatesAutoresizingMaskIntoConstraints="NO" id="su6-Ve-Mu4">
  68 + <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="143" sectionHeaderHeight="28" sectionFooterHeight="28" translatesAutoresizingMaskIntoConstraints="NO" id="su6-Ve-Mu4">
85 69 <rect key="frame" x="0.0" y="158" width="375" height="460"/>
86 70 <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
  71 + <view key="tableFooterView" contentMode="scaleToFill" id="KPy-fi-ei0">
  72 + <rect key="frame" x="0.0" y="171" width="375" height="1"/>
  73 + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
  74 + <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
  75 + </view>
87 76 <prototypes>
88   - <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="identifier" rowHeight="143" id="tO9-FG-1Ux" customClass="ResourceViewControllerTableViewCell" customModule="YouerLiveVideo" customModuleProvider="target">
  77 + <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" reuseIdentifier="identifier" rowHeight="143" id="tO9-FG-1Ux" customClass="ResourceViewControllerTableViewCell" customModule="YouerLiveVideo" customModuleProvider="target">
89 78 <rect key="frame" x="0.0" y="28" width="375" height="143"/>
90 79 <autoresizingMask key="autoresizingMask"/>
91 80 <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="tO9-FG-1Ux" id="73f-qf-61d">
92   - <rect key="frame" x="0.0" y="0.0" width="375" height="143"/>
  81 + <rect key="frame" x="0.0" y="0.0" width="375" height="142"/>
93 82 <autoresizingMask key="autoresizingMask"/>
94 83 <subviews>
95 84 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="fqH-Ro-Yhh">
... ... @@ -100,7 +89,7 @@
100 89 </constraints>
101 90 </imageView>
102 91 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="FNV-Qr-xrm">
103   - <rect key="frame" x="114" y="32" width="42" height="21"/>
  92 + <rect key="frame" x="114" y="32" width="165" height="21"/>
104 93 <fontDescription key="fontDescription" type="system" pointSize="17"/>
105 94 <nil key="textColor"/>
106 95 <nil key="highlightedColor"/>
... ... @@ -152,6 +141,7 @@
152 141 <constraint firstItem="paA-9W-bbM" firstAttribute="centerY" secondItem="WIc-YL-RvX" secondAttribute="centerY" id="Me2-Im-Vc9"/>
153 142 <constraint firstItem="fqH-Ro-Yhh" firstAttribute="leading" secondItem="73f-qf-61d" secondAttribute="leading" constant="8" id="Zty-O7-8xT"/>
154 143 <constraint firstItem="IQj-VB-dch" firstAttribute="centerY" secondItem="73f-qf-61d" secondAttribute="centerY" id="emm-la-YJV"/>
  144 + <constraint firstItem="yx0-8F-VaM" firstAttribute="leading" secondItem="FNV-Qr-xrm" secondAttribute="trailing" constant="8" id="fO3-dB-JFM"/>
155 145 <constraint firstItem="paA-9W-bbM" firstAttribute="leading" secondItem="ds9-Gw-nOf" secondAttribute="trailing" constant="8" id="g70-bh-6yw"/>
156 146 <constraint firstItem="IQj-VB-dch" firstAttribute="leading" secondItem="FNV-Qr-xrm" secondAttribute="leading" id="hRh-iw-dub"/>
157 147 <constraint firstItem="WIc-YL-RvX" firstAttribute="leading" secondItem="FNV-Qr-xrm" secondAttribute="leading" id="lPb-2C-esz"/>
... ... @@ -222,7 +212,7 @@
222 212 <constraint firstItem="su6-Ve-Mu4" firstAttribute="leading" secondItem="SdC-Ao-cee" secondAttribute="leading" id="ydL-OO-314"/>
223 213 </constraints>
224 214 </view>
225   - <navigationItem key="navigationItem" id="fCE-jD-MLQ"/>
  215 + <navigationItem key="navigationItem" title="资源" id="q2d-RH-EiL"/>
226 216 <connections>
227 217 <outlet property="grayView" destination="egd-vU-DWS" id="BJW-OO-Xca"/>
228 218 <outlet property="searchDisplayController" destination="k0q-9e-h1a" id="f1i-NC-WU2"/>
... ... @@ -248,7 +238,7 @@
248 238 </objects>
249 239 <point key="canvasLocation" x="-1084" y="2112.5937031484259"/>
250 240 </scene>
251   - <!--Main Home Table View Controller-->
  241 + <!--教育视频云-->
252 242 <scene sceneID="Npa-Do-pvj">
253 243 <objects>
254 244 <tableViewController id="HdB-6p-eAX" customClass="MainHomeTableViewController" customModule="YouerLiveVideo" customModuleProvider="target" sceneMemberID="viewController">
... ... @@ -262,7 +252,7 @@
262 252 <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
263 253 </view>
264 254 <view key="tableFooterView" contentMode="scaleToFill" id="1qL-hk-kYn">
265   - <rect key="frame" x="0.0" y="1036" width="375" height="1"/>
  255 + <rect key="frame" x="0.0" y="1129" width="375" height="1"/>
266 256 <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
267 257 <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
268 258 </view>
... ... @@ -277,60 +267,68 @@
277 267 <autoresizingMask key="autoresizingMask"/>
278 268 <subviews>
279 269 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="7wy-DL-PKX">
280   - <rect key="frame" x="0.0" y="0.0" width="375" height="20"/>
  270 + <rect key="frame" x="0.0" y="0.0" width="375" height="15"/>
281 271 <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
282 272 <constraints>
283   - <constraint firstAttribute="height" constant="20" id="mtL-aK-O9I"/>
  273 + <constraint firstAttribute="height" constant="15" id="mtL-aK-O9I"/>
284 274 </constraints>
285 275 </view>
286 276 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="tc9-OD-L9x">
287   - <rect key="frame" x="8" y="28" width="30" height="30"/>
  277 + <rect key="frame" x="15" y="30" width="20" height="20"/>
288 278 <constraints>
289   - <constraint firstAttribute="height" constant="30" id="dzU-2e-0A0"/>
290   - <constraint firstAttribute="width" constant="30" id="jeW-Q1-Yqy"/>
  279 + <constraint firstAttribute="height" constant="20" id="dzU-2e-0A0"/>
  280 + <constraint firstAttribute="width" constant="20" id="jeW-Q1-Yqy"/>
291 281 </constraints>
292 282 </imageView>
293 283 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="gpI-zw-6qq">
294   - <rect key="frame" x="337" y="28" width="30" height="30"/>
  284 + <rect key="frame" x="352" y="32.5" width="8" height="15"/>
  285 + <color key="backgroundColor" red="0.10980392160000001" green="0.63529411759999999" blue="1" alpha="1" colorSpace="calibratedRGB"/>
295 286 <constraints>
296   - <constraint firstAttribute="width" constant="30" id="X2b-MK-4bQ"/>
297   - <constraint firstAttribute="height" constant="30" id="ZkK-Yr-R26"/>
  287 + <constraint firstAttribute="width" constant="8" id="X2b-MK-4bQ"/>
  288 + <constraint firstAttribute="height" constant="15" id="ZkK-Yr-R26"/>
298 289 </constraints>
299 290 </imageView>
300 291 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="排行" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="qcg-Fh-r2v">
301   - <rect key="frame" x="46" y="33" width="35" height="21"/>
302   - <fontDescription key="fontDescription" type="system" pointSize="17"/>
303   - <color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
  292 + <rect key="frame" x="55" y="30.5" width="31" height="18"/>
  293 + <fontDescription key="fontDescription" type="system" pointSize="15"/>
  294 + <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
304 295 <nil key="highlightedColor"/>
305 296 </label>
306 297 <collectionView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" dataMode="prototypes" translatesAutoresizingMaskIntoConstraints="NO" id="BjK-Gw-VeS">
307   - <rect key="frame" x="8" y="83" width="359" height="129"/>
  298 + <rect key="frame" x="15" y="65" width="345" height="132"/>
308 299 <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
309 300 <collectionViewFlowLayout key="collectionViewLayout" minimumLineSpacing="0.0" minimumInteritemSpacing="0.0" id="gds-Wd-nlX">
310   - <size key="itemSize" width="106" height="113"/>
  301 + <size key="itemSize" width="126" height="133"/>
311 302 <size key="headerReferenceSize" width="0.0" height="0.0"/>
312 303 <size key="footerReferenceSize" width="0.0" height="0.0"/>
313 304 <inset key="sectionInset" minX="0.0" minY="0.0" maxX="0.0" maxY="0.0"/>
314 305 </collectionViewFlowLayout>
315 306 <cells>
316 307 <collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="HomeFirstCollectionViewCell" id="0XL-6V-xV9" customClass="HomeFirstCollectionViewCell" customModule="YouerLiveVideo" customModuleProvider="target">
317   - <rect key="frame" x="0.0" y="0.0" width="106" height="113"/>
  308 + <rect key="frame" x="0.0" y="0.0" width="126" height="133"/>
318 309 <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
319 310 <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
320   - <rect key="frame" x="0.0" y="0.0" width="106" height="113"/>
  311 + <rect key="frame" x="0.0" y="0.0" width="126" height="133"/>
321 312 <autoresizingMask key="autoresizingMask"/>
322 313 <subviews>
323   - <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="633-X9-DpN">
324   - <rect key="frame" x="0.0" y="0.0" width="106" height="113"/>
  314 + <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="633-X9-DpN">
  315 + <rect key="frame" x="0.0" y="0.0" width="126" height="133"/>
  316 + <userDefinedRuntimeAttributes>
  317 + <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
  318 + <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
  319 + <integer key="value" value="5"/>
  320 + </userDefinedRuntimeAttribute>
  321 + </userDefinedRuntimeAttributes>
325 322 </imageView>
326 323 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="学校" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="AAa-2a-bHH">
327   - <rect key="frame" x="8" y="8" width="35" height="21"/>
328   - <fontDescription key="fontDescription" type="system" pointSize="17"/>
329   - <nil key="textColor"/>
  324 + <rect key="frame" x="8" y="8" width="31" height="18"/>
  325 + <fontDescription key="fontDescription" type="system" pointSize="15"/>
  326 + <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
330 327 <nil key="highlightedColor"/>
331 328 </label>
332 329 </subviews>
333 330 </view>
  331 + <color key="backgroundColor" red="0.10980392160000001" green="0.63529411759999999" blue="1" alpha="1" colorSpace="calibratedRGB"/>
334 332 <constraints>
335 333 <constraint firstItem="633-X9-DpN" firstAttribute="leading" secondItem="0XL-6V-xV9" secondAttribute="leading" id="G57-Qp-dfe"/>
336 334 <constraint firstItem="AAa-2a-bHH" firstAttribute="top" secondItem="0XL-6V-xV9" secondAttribute="top" constant="8" id="Iul-8f-BwX"/>
... ... @@ -352,75 +350,75 @@
352 350 </collectionView>
353 351 </subviews>
354 352 <constraints>
355   - <constraint firstItem="BjK-Gw-VeS" firstAttribute="top" secondItem="gpI-zw-6qq" secondAttribute="bottom" constant="25" id="28f-X5-SdT"/>
356   - <constraint firstItem="tc9-OD-L9x" firstAttribute="top" secondItem="6kt-xb-IdN" secondAttribute="top" constant="28" id="FmW-tn-Ne9"/>
357   - <constraint firstItem="tc9-OD-L9x" firstAttribute="leading" secondItem="6kt-xb-IdN" secondAttribute="leading" constant="8" id="H9H-ud-58B"/>
358   - <constraint firstAttribute="trailing" secondItem="gpI-zw-6qq" secondAttribute="trailing" constant="8" id="TOV-dd-5uu"/>
  353 + <constraint firstItem="tc9-OD-L9x" firstAttribute="top" secondItem="6kt-xb-IdN" secondAttribute="top" constant="30" id="FmW-tn-Ne9"/>
  354 + <constraint firstItem="tc9-OD-L9x" firstAttribute="leading" secondItem="6kt-xb-IdN" secondAttribute="leading" constant="15" id="H9H-ud-58B"/>
  355 + <constraint firstAttribute="trailing" secondItem="gpI-zw-6qq" secondAttribute="trailing" constant="15" id="TOV-dd-5uu"/>
359 356 <constraint firstAttribute="trailing" secondItem="7wy-DL-PKX" secondAttribute="trailing" id="VW0-SV-RMy"/>
360   - <constraint firstItem="qcg-Fh-r2v" firstAttribute="top" secondItem="6kt-xb-IdN" secondAttribute="topMargin" constant="25" id="XhC-hV-TPX"/>
  357 + <constraint firstItem="qcg-Fh-r2v" firstAttribute="top" secondItem="6kt-xb-IdN" secondAttribute="topMargin" constant="22.5" id="XhC-hV-TPX"/>
361 358 <constraint firstItem="7wy-DL-PKX" firstAttribute="top" secondItem="6kt-xb-IdN" secondAttribute="top" id="YbM-fT-qi7"/>
362   - <constraint firstItem="BjK-Gw-VeS" firstAttribute="leading" secondItem="6kt-xb-IdN" secondAttribute="leading" constant="8" id="fES-Cd-ybP"/>
363   - <constraint firstAttribute="bottom" secondItem="BjK-Gw-VeS" secondAttribute="bottom" id="iOk-mu-PWT"/>
  359 + <constraint firstItem="BjK-Gw-VeS" firstAttribute="leading" secondItem="6kt-xb-IdN" secondAttribute="leading" constant="15" id="fES-Cd-ybP"/>
  360 + <constraint firstAttribute="bottom" secondItem="BjK-Gw-VeS" secondAttribute="bottom" constant="15" id="iOk-mu-PWT"/>
364 361 <constraint firstItem="7wy-DL-PKX" firstAttribute="leading" secondItem="6kt-xb-IdN" secondAttribute="leading" id="s4K-qo-g3e"/>
365   - <constraint firstItem="qcg-Fh-r2v" firstAttribute="leading" secondItem="tc9-OD-L9x" secondAttribute="trailing" constant="8" id="sZ7-sT-QdJ"/>
366   - <constraint firstAttribute="trailing" secondItem="BjK-Gw-VeS" secondAttribute="trailing" constant="8" id="ujX-8f-TtW"/>
367   - <constraint firstItem="gpI-zw-6qq" firstAttribute="top" secondItem="6kt-xb-IdN" secondAttribute="top" constant="28" id="yQW-LA-9fx"/>
  362 + <constraint firstItem="qcg-Fh-r2v" firstAttribute="leading" secondItem="tc9-OD-L9x" secondAttribute="trailing" constant="20" id="sZ7-sT-QdJ"/>
  363 + <constraint firstAttribute="trailing" secondItem="BjK-Gw-VeS" secondAttribute="trailing" constant="15" id="ujX-8f-TtW"/>
  364 + <constraint firstItem="BjK-Gw-VeS" firstAttribute="top" secondItem="tc9-OD-L9x" secondAttribute="bottom" constant="15" id="ukg-8D-CZH"/>
  365 + <constraint firstItem="gpI-zw-6qq" firstAttribute="top" secondItem="6kt-xb-IdN" secondAttribute="top" constant="32.5" id="yQW-LA-9fx"/>
368 366 </constraints>
369 367 </tableViewCellContentView>
370 368 </tableViewCell>
371   - <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="cell1" selectionStyle="none" indentationWidth="10" reuseIdentifier="cell1" rowHeight="239" id="ZCI-0y-Uf0" customClass="HomeSecondTableViewCell" customModule="YouerLiveVideo" customModuleProvider="target">
372   - <rect key="frame" x="0.0" y="364" width="375" height="239"/>
  369 + <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="cell1" selectionStyle="none" indentationWidth="10" reuseIdentifier="cell1" rowHeight="252" id="ZCI-0y-Uf0" customClass="HomeSecondTableViewCell" customModule="YouerLiveVideo" customModuleProvider="target">
  370 + <rect key="frame" x="0.0" y="364" width="375" height="252"/>
373 371 <autoresizingMask key="autoresizingMask"/>
374 372 <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="ZCI-0y-Uf0" id="Cq0-Rg-if7">
375   - <rect key="frame" x="0.0" y="0.0" width="375" height="239"/>
  373 + <rect key="frame" x="0.0" y="0.0" width="375" height="252"/>
376 374 <autoresizingMask key="autoresizingMask"/>
377 375 <subviews>
378 376 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="X1l-jG-Huh">
379   - <rect key="frame" x="0.0" y="0.0" width="375" height="20"/>
  377 + <rect key="frame" x="0.0" y="0.0" width="375" height="15"/>
380 378 <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
381 379 <constraints>
382   - <constraint firstAttribute="height" constant="20" id="cu9-3U-16R"/>
  380 + <constraint firstAttribute="height" constant="15" id="cu9-3U-16R"/>
383 381 </constraints>
384 382 </view>
385 383 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="JfT-qO-w2b">
386   - <rect key="frame" x="8" y="28" width="30" height="30"/>
  384 + <rect key="frame" x="15" y="30" width="20" height="20"/>
387 385 <constraints>
388   - <constraint firstAttribute="width" constant="30" id="gju-0Y-vbI"/>
389   - <constraint firstAttribute="height" constant="30" id="upC-qc-OXv"/>
  386 + <constraint firstAttribute="width" constant="20" id="gju-0Y-vbI"/>
  387 + <constraint firstAttribute="height" constant="20" id="upC-qc-OXv"/>
390 388 </constraints>
391 389 </imageView>
392 390 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="QcE-wo-WjW">
393   - <rect key="frame" x="337" y="28" width="30" height="30"/>
  391 + <rect key="frame" x="352" y="32.5" width="8" height="15"/>
394 392 <constraints>
395   - <constraint firstAttribute="width" constant="30" id="6rP-92-fox"/>
396   - <constraint firstAttribute="height" constant="30" id="DH3-jE-L3a"/>
  393 + <constraint firstAttribute="width" constant="8" id="6rP-92-fox"/>
  394 + <constraint firstAttribute="height" constant="15" id="DH3-jE-L3a"/>
397 395 </constraints>
398 396 </imageView>
399 397 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="热门微课" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Xxv-Eh-YJD">
400   - <rect key="frame" x="46" y="33" width="69.5" height="21"/>
401   - <fontDescription key="fontDescription" type="system" pointSize="17"/>
402   - <color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
  398 + <rect key="frame" x="55" y="31" width="61.5" height="18"/>
  399 + <fontDescription key="fontDescription" type="system" pointSize="15"/>
  400 + <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
403 401 <nil key="highlightedColor"/>
404 402 </label>
405 403 <collectionView clipsSubviews="YES" multipleTouchEnabled="YES" tag="1" contentMode="scaleToFill" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" dataMode="prototypes" translatesAutoresizingMaskIntoConstraints="NO" id="RVe-Pr-T23">
406   - <rect key="frame" x="8" y="83" width="359" height="156"/>
  404 + <rect key="frame" x="15" y="65" width="345" height="187"/>
407 405 <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
408 406 <collectionViewFlowLayout key="collectionViewLayout" minimumLineSpacing="0.0" minimumInteritemSpacing="0.0" id="w5u-tk-vf4">
409   - <size key="itemSize" width="165" height="146"/>
  407 + <size key="itemSize" width="207" height="193"/>
410 408 <size key="headerReferenceSize" width="0.0" height="0.0"/>
411 409 <size key="footerReferenceSize" width="0.0" height="0.0"/>
412 410 <inset key="sectionInset" minX="0.0" minY="0.0" maxX="0.0" maxY="0.0"/>
413 411 </collectionViewFlowLayout>
414 412 <cells>
415 413 <collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="HomeSecondCollectionViewCell" id="apu-hG-EEc" customClass="HomeSecondCollectionViewCell" customModule="YouerLiveVideo" customModuleProvider="target">
416   - <rect key="frame" x="0.0" y="0.0" width="165" height="146"/>
  414 + <rect key="frame" x="69" y="0.0" width="207" height="193"/>
417 415 <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
418 416 <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
419   - <rect key="frame" x="0.0" y="0.0" width="165" height="146"/>
  417 + <rect key="frame" x="0.0" y="0.0" width="207" height="193"/>
420 418 <autoresizingMask key="autoresizingMask"/>
421 419 <subviews>
422 420 <imageView userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="5g9-CD-vXa">
423   - <rect key="frame" x="0.0" y="0.0" width="160" height="87.5"/>
  421 + <rect key="frame" x="0.0" y="0.0" width="207" height="93.5"/>
424 422 <userDefinedRuntimeAttributes>
425 423 <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
426 424 <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
... ... @@ -429,37 +427,37 @@
429 427 </userDefinedRuntimeAttributes>
430 428 </imageView>
431 429 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="神奇的线圈" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="FRa-kP-4Or">
432   - <rect key="frame" x="0.0" y="97" width="117.5" height="18"/>
433   - <fontDescription key="fontDescription" type="system" pointSize="15"/>
434   - <nil key="textColor"/>
  430 + <rect key="frame" x="0.0" y="136" width="164.5" height="17"/>
  431 + <fontDescription key="fontDescription" type="system" pointSize="14"/>
  432 + <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
435 433 <nil key="highlightedColor"/>
436 434 </label>
437 435 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="主讲师:老师" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Okq-ZI-Xh2">
438   - <rect key="frame" x="0.0" y="123" width="96" height="15"/>
  436 + <rect key="frame" x="0.0" y="163" width="138" height="15"/>
439 437 <fontDescription key="fontDescription" type="system" pointSize="12"/>
440 438 <nil key="textColor"/>
441 439 <nil key="highlightedColor"/>
442 440 </label>
443 441 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="01-01" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Z3c-Ai-wr8">
444   - <rect key="frame" x="125.5" y="99.5" width="34.5" height="16"/>
  442 + <rect key="frame" x="172.5" y="137.5" width="34.5" height="16"/>
445 443 <constraints>
446 444 <constraint firstAttribute="width" constant="34.5" id="4Ms-Yd-VYH"/>
447 445 </constraints>
448 446 <fontDescription key="fontDescription" type="system" pointSize="13"/>
449   - <nil key="textColor"/>
  447 + <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
450 448 <nil key="highlightedColor"/>
451 449 </label>
452 450 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="99999" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="tln-9q-8L4">
453   - <rect key="frame" x="121.5" y="123.5" width="38.5" height="14.5"/>
  451 + <rect key="frame" x="168.5" y="163.5" width="38.5" height="14.5"/>
454 452 <fontDescription key="fontDescription" type="system" pointSize="12"/>
455   - <nil key="textColor"/>
  453 + <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
456 454 <nil key="highlightedColor"/>
457 455 </label>
458 456 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="Ah6-9S-zUX">
459   - <rect key="frame" x="104" y="123" width="15" height="15"/>
  457 + <rect key="frame" x="154" y="167" width="12" height="8"/>
460 458 <constraints>
461   - <constraint firstAttribute="width" constant="15" id="Gst-KJ-hy2"/>
462   - <constraint firstAttribute="height" constant="15" id="IB2-dY-89b"/>
  459 + <constraint firstAttribute="width" constant="12" id="Gst-KJ-hy2"/>
  460 + <constraint firstAttribute="height" constant="8" id="IB2-dY-89b"/>
463 461 </constraints>
464 462 </imageView>
465 463 </subviews>
... ... @@ -468,19 +466,19 @@
468 466 <constraint firstItem="Z3c-Ai-wr8" firstAttribute="leading" secondItem="FRa-kP-4Or" secondAttribute="trailing" constant="8" id="4L1-p3-lcO"/>
469 467 <constraint firstAttribute="trailingMargin" secondItem="Okq-ZI-Xh2" secondAttribute="trailing" constant="61" id="6V2-3e-YCS"/>
470 468 <constraint firstItem="5g9-CD-vXa" firstAttribute="leading" secondItem="apu-hG-EEc" secondAttribute="leading" id="8mz-9g-viB"/>
471   - <constraint firstItem="5g9-CD-vXa" firstAttribute="height" secondItem="apu-hG-EEc" secondAttribute="height" multiplier="3:5" id="Cna-LC-U6q"/>
472   - <constraint firstAttribute="trailing" secondItem="tln-9q-8L4" secondAttribute="trailing" constant="5" id="E6O-vX-SmB"/>
473   - <constraint firstItem="Okq-ZI-Xh2" firstAttribute="top" secondItem="FRa-kP-4Or" secondAttribute="bottom" constant="8" id="Jbx-d9-HO1"/>
  469 + <constraint firstItem="5g9-CD-vXa" firstAttribute="height" secondItem="apu-hG-EEc" secondAttribute="height" multiplier="16:33" id="Cna-LC-U6q"/>
  470 + <constraint firstAttribute="trailing" secondItem="tln-9q-8L4" secondAttribute="trailing" id="E6O-vX-SmB"/>
  471 + <constraint firstItem="Okq-ZI-Xh2" firstAttribute="top" secondItem="FRa-kP-4Or" secondAttribute="bottom" constant="10" id="Jbx-d9-HO1"/>
474 472 <constraint firstItem="FRa-kP-4Or" firstAttribute="leading" secondItem="apu-hG-EEc" secondAttribute="leading" id="Ntj-vJ-hJ8"/>
475   - <constraint firstAttribute="bottom" secondItem="Okq-ZI-Xh2" secondAttribute="bottom" constant="8" id="QF3-cj-K1q"/>
  473 + <constraint firstAttribute="bottom" secondItem="Okq-ZI-Xh2" secondAttribute="bottom" constant="15" id="QF3-cj-K1q"/>
476 474 <constraint firstItem="5g9-CD-vXa" firstAttribute="top" secondItem="apu-hG-EEc" secondAttribute="top" id="QVL-f3-dbA"/>
477   - <constraint firstAttribute="bottom" secondItem="tln-9q-8L4" secondAttribute="bottom" constant="8" id="ZWt-gE-SDD"/>
  475 + <constraint firstAttribute="bottom" secondItem="tln-9q-8L4" secondAttribute="bottom" constant="15" id="ZWt-gE-SDD"/>
478 476 <constraint firstItem="Okq-ZI-Xh2" firstAttribute="leading" secondItem="apu-hG-EEc" secondAttribute="leading" id="amA-JO-bBv"/>
479   - <constraint firstAttribute="trailing" secondItem="Z3c-Ai-wr8" secondAttribute="trailing" constant="5" id="gQg-P7-tzY"/>
  477 + <constraint firstAttribute="trailing" secondItem="Z3c-Ai-wr8" secondAttribute="trailing" id="gQg-P7-tzY"/>
480 478 <constraint firstItem="tln-9q-8L4" firstAttribute="leading" secondItem="Ah6-9S-zUX" secondAttribute="trailing" constant="2.5" id="hcm-2p-mkH"/>
481   - <constraint firstAttribute="trailing" secondItem="5g9-CD-vXa" secondAttribute="trailing" constant="5" id="iYZ-VU-Qxd"/>
482   - <constraint firstAttribute="bottomMargin" secondItem="Ah6-9S-zUX" secondAttribute="bottom" id="o2X-v5-iIB"/>
483   - <constraint firstItem="tln-9q-8L4" firstAttribute="top" secondItem="Z3c-Ai-wr8" secondAttribute="bottom" constant="8" id="odz-bE-nss"/>
  479 + <constraint firstAttribute="trailing" secondItem="5g9-CD-vXa" secondAttribute="trailing" id="iYZ-VU-Qxd"/>
  480 + <constraint firstAttribute="bottomMargin" secondItem="Ah6-9S-zUX" secondAttribute="bottom" constant="10" id="o2X-v5-iIB"/>
  481 + <constraint firstItem="tln-9q-8L4" firstAttribute="top" secondItem="Z3c-Ai-wr8" secondAttribute="bottom" constant="10" id="odz-bE-nss"/>
484 482 </constraints>
485 483 <connections>
486 484 <outlet property="dateLabel" destination="Z3c-Ai-wr8" id="FRL-DX-Cjy"/>
... ... @@ -498,76 +496,76 @@
498 496 </collectionView>
499 497 </subviews>
500 498 <constraints>
501   - <constraint firstItem="Xxv-Eh-YJD" firstAttribute="leading" secondItem="JfT-qO-w2b" secondAttribute="trailing" constant="8" id="Oh2-rT-AyR"/>
502   - <constraint firstItem="JfT-qO-w2b" firstAttribute="top" secondItem="X1l-jG-Huh" secondAttribute="bottom" constant="8" id="Oq0-HW-fvi"/>
  499 + <constraint firstItem="Xxv-Eh-YJD" firstAttribute="leading" secondItem="JfT-qO-w2b" secondAttribute="trailing" constant="20" id="Oh2-rT-AyR"/>
  500 + <constraint firstItem="JfT-qO-w2b" firstAttribute="top" secondItem="X1l-jG-Huh" secondAttribute="bottom" constant="15" id="Oq0-HW-fvi"/>
503 501 <constraint firstItem="X1l-jG-Huh" firstAttribute="leading" secondItem="Cq0-Rg-if7" secondAttribute="leading" id="PzB-GC-QTO"/>
504   - <constraint firstItem="JfT-qO-w2b" firstAttribute="leading" secondItem="Cq0-Rg-if7" secondAttribute="leading" constant="8" id="Vk4-B0-rkr"/>
  502 + <constraint firstItem="JfT-qO-w2b" firstAttribute="leading" secondItem="Cq0-Rg-if7" secondAttribute="leading" constant="15" id="Vk4-B0-rkr"/>
505 503 <constraint firstItem="X1l-jG-Huh" firstAttribute="top" secondItem="Cq0-Rg-if7" secondAttribute="top" id="VrV-Ys-kvx"/>
506   - <constraint firstAttribute="trailing" secondItem="RVe-Pr-T23" secondAttribute="trailing" constant="8" id="bZh-d7-on4"/>
507   - <constraint firstItem="QcE-wo-WjW" firstAttribute="top" secondItem="X1l-jG-Huh" secondAttribute="bottom" constant="8" id="f8O-fQ-wlw"/>
  504 + <constraint firstAttribute="trailing" secondItem="RVe-Pr-T23" secondAttribute="trailing" constant="15" id="bZh-d7-on4"/>
  505 + <constraint firstItem="QcE-wo-WjW" firstAttribute="top" secondItem="X1l-jG-Huh" secondAttribute="bottom" constant="17.5" id="f8O-fQ-wlw"/>
508 506 <constraint firstAttribute="bottom" secondItem="RVe-Pr-T23" secondAttribute="bottom" id="n4e-2D-Lhx"/>
509   - <constraint firstItem="RVe-Pr-T23" firstAttribute="leading" secondItem="Cq0-Rg-if7" secondAttribute="leading" constant="8" id="npx-Ap-jZy"/>
510   - <constraint firstItem="RVe-Pr-T23" firstAttribute="top" secondItem="QcE-wo-WjW" secondAttribute="bottom" constant="25" id="qSC-rl-7ob"/>
  507 + <constraint firstItem="RVe-Pr-T23" firstAttribute="leading" secondItem="Cq0-Rg-if7" secondAttribute="leading" constant="15" id="npx-Ap-jZy"/>
  508 + <constraint firstItem="RVe-Pr-T23" firstAttribute="top" secondItem="JfT-qO-w2b" secondAttribute="bottom" constant="15" id="qT2-1K-3u3"/>
511 509 <constraint firstAttribute="trailing" secondItem="X1l-jG-Huh" secondAttribute="trailing" id="r4k-87-FG5"/>
512   - <constraint firstItem="Xxv-Eh-YJD" firstAttribute="top" secondItem="X1l-jG-Huh" secondAttribute="bottom" constant="13" id="rRq-W3-cJT"/>
513   - <constraint firstAttribute="trailing" secondItem="QcE-wo-WjW" secondAttribute="trailing" constant="8" id="wTk-uV-bbq"/>
  510 + <constraint firstItem="Xxv-Eh-YJD" firstAttribute="top" secondItem="X1l-jG-Huh" secondAttribute="bottom" constant="16" id="rRq-W3-cJT"/>
  511 + <constraint firstAttribute="trailing" secondItem="QcE-wo-WjW" secondAttribute="trailing" constant="15" id="wTk-uV-bbq"/>
514 512 </constraints>
515 513 </tableViewCellContentView>
516 514 <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
517 515 </tableViewCell>
518 516 <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="cell2" selectionStyle="none" indentationWidth="10" reuseIdentifier="cell2" rowHeight="313" id="gzq-jC-D39" customClass="HomeThirdTableViewCell" customModule="YouerLiveVideo" customModuleProvider="target">
519   - <rect key="frame" x="0.0" y="603" width="375" height="313"/>
  517 + <rect key="frame" x="0.0" y="616" width="375" height="313"/>
520 518 <autoresizingMask key="autoresizingMask"/>
521 519 <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="gzq-jC-D39" id="kA1-Za-kS2">
522 520 <rect key="frame" x="0.0" y="0.0" width="375" height="313"/>
523 521 <autoresizingMask key="autoresizingMask"/>
524 522 <subviews>
525 523 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="9Zz-SB-8Fl">
526   - <rect key="frame" x="0.0" y="0.0" width="375" height="20"/>
  524 + <rect key="frame" x="0.0" y="0.0" width="375" height="15"/>
527 525 <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
528 526 <constraints>
529   - <constraint firstAttribute="height" constant="20" id="zk7-4f-Srd"/>
  527 + <constraint firstAttribute="height" constant="15" id="zk7-4f-Srd"/>
530 528 </constraints>
531 529 </view>
532 530 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="UWk-5A-PEj">
533   - <rect key="frame" x="8" y="28" width="30" height="30"/>
  531 + <rect key="frame" x="15" y="30" width="20" height="20"/>
534 532 <constraints>
535   - <constraint firstAttribute="width" constant="30" id="c35-8L-oxO"/>
536   - <constraint firstAttribute="height" constant="30" id="iOy-11-gMR"/>
  533 + <constraint firstAttribute="width" constant="20" id="c35-8L-oxO"/>
  534 + <constraint firstAttribute="height" constant="20" id="iOy-11-gMR"/>
537 535 </constraints>
538 536 </imageView>
539 537 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="Tib-Fm-A1U">
540   - <rect key="frame" x="337" y="28" width="30" height="30"/>
  538 + <rect key="frame" x="352" y="32.5" width="8" height="15"/>
541 539 <constraints>
542   - <constraint firstAttribute="height" constant="30" id="5ek-5S-7Cb"/>
543   - <constraint firstAttribute="width" constant="30" id="k5G-EP-9l9"/>
  540 + <constraint firstAttribute="height" constant="15" id="5ek-5S-7Cb"/>
  541 + <constraint firstAttribute="width" constant="8" id="k5G-EP-9l9"/>
544 542 </constraints>
545 543 </imageView>
546 544 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="资源" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="nKJ-qz-sg8">
547   - <rect key="frame" x="46" y="33" width="35" height="21"/>
548   - <fontDescription key="fontDescription" type="system" pointSize="17"/>
549   - <color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
  545 + <rect key="frame" x="50" y="31" width="31" height="18"/>
  546 + <fontDescription key="fontDescription" type="system" pointSize="15"/>
  547 + <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
550 548 <nil key="highlightedColor"/>
551 549 </label>
552   - <collectionView clipsSubviews="YES" multipleTouchEnabled="YES" tag="1" contentMode="scaleToFill" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" dataMode="prototypes" translatesAutoresizingMaskIntoConstraints="NO" id="0uI-9D-XVZ">
553   - <rect key="frame" x="8" y="83" width="359" height="230"/>
  550 + <collectionView clipsSubviews="YES" multipleTouchEnabled="YES" tag="1" contentMode="scaleToFill" scrollEnabled="NO" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" dataMode="prototypes" translatesAutoresizingMaskIntoConstraints="NO" id="0uI-9D-XVZ">
  551 + <rect key="frame" x="15" y="65" width="345" height="248"/>
554 552 <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
555 553 <collectionViewFlowLayout key="collectionViewLayout" minimumLineSpacing="0.0" minimumInteritemSpacing="0.0" id="f2C-TL-VTa">
556   - <size key="itemSize" width="113" height="222"/>
  554 + <size key="itemSize" width="147" height="246"/>
557 555 <size key="headerReferenceSize" width="0.0" height="0.0"/>
558 556 <size key="footerReferenceSize" width="0.0" height="0.0"/>
559 557 <inset key="sectionInset" minX="0.0" minY="0.0" maxX="0.0" maxY="0.0"/>
560 558 </collectionViewFlowLayout>
561 559 <cells>
562 560 <collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="HomeThirdCollectionViewCell" id="gdp-Ji-zur" customClass="HomeThirdCollectionViewCell" customModule="YouerLiveVideo" customModuleProvider="target">
563   - <rect key="frame" x="0.0" y="0.0" width="113" height="222"/>
  561 + <rect key="frame" x="0.0" y="0.0" width="147" height="246"/>
564 562 <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
565 563 <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
566   - <rect key="frame" x="0.0" y="0.0" width="113" height="222"/>
  564 + <rect key="frame" x="0.0" y="0.0" width="147" height="246"/>
567 565 <autoresizingMask key="autoresizingMask"/>
568 566 <subviews>
569 567 <imageView userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="bUk-R1-5gT">
570   - <rect key="frame" x="0.0" y="0.0" width="108" height="108"/>
  568 + <rect key="frame" x="0.0" y="0.0" width="147" height="147"/>
571 569 <constraints>
572 570 <constraint firstAttribute="width" secondItem="bUk-R1-5gT" secondAttribute="height" multiplier="1:1" id="MTe-oF-wJF"/>
573 571 </constraints>
... ... @@ -578,62 +576,66 @@
578 576 </userDefinedRuntimeAttribute>
579 577 </userDefinedRuntimeAttributes>
580 578 </imageView>
581   - <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="神奇的线圈神奇的线圈神奇的线圈" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Zk6-bu-T1Z">
582   - <rect key="frame" x="0.0" y="125" width="108" height="42"/>
  579 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="神奇的线圈神奇的线圈神奇的线圈神奇的线圈神奇的线圈神奇的线圈" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Zk6-bu-T1Z">
  580 + <rect key="frame" x="0.0" y="150.5" width="147" height="30"/>
583 581 <constraints>
584   - <constraint firstAttribute="height" constant="42" id="9Hi-f9-B2N"/>
  582 + <constraint firstAttribute="height" constant="30" id="5EB-ra-Pnh"/>
585 583 </constraints>
586   - <fontDescription key="fontDescription" type="system" pointSize="15"/>
587   - <nil key="textColor"/>
  584 + <fontDescription key="fontDescription" type="system" pointSize="12"/>
  585 + <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
588 586 <nil key="highlightedColor"/>
589 587 </label>
590 588 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="01-01" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="q2O-JU-nOk">
591   - <rect key="frame" x="0.0" y="198" width="44" height="16"/>
592   - <fontDescription key="fontDescription" type="system" pointSize="13"/>
593   - <nil key="textColor"/>
  589 + <rect key="frame" x="0.0" y="216" width="100" height="15"/>
  590 + <constraints>
  591 + <constraint firstAttribute="height" constant="15" id="FNC-fa-EYl"/>
  592 + </constraints>
  593 + <fontDescription key="fontDescription" type="system" pointSize="12"/>
  594 + <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
594 595 <nil key="highlightedColor"/>
595 596 </label>
596 597 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="99999" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Ens-w5-JNf">
597   - <rect key="frame" x="69" y="199" width="39" height="15"/>
  598 + <rect key="frame" x="108" y="216" width="39" height="15"/>
598 599 <fontDescription key="fontDescription" type="system" pointSize="12"/>
599   - <nil key="textColor"/>
  600 + <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
600 601 <nil key="highlightedColor"/>
601 602 </label>
602 603 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="j8z-Dm-5mL">
603   - <rect key="frame" x="52" y="199" width="15" height="15"/>
  604 + <rect key="frame" x="100" y="220" width="8" height="8"/>
604 605 <constraints>
605   - <constraint firstAttribute="width" constant="15" id="f5p-Mv-Ylo"/>
606   - <constraint firstAttribute="height" constant="15" id="yKI-Iv-ctT"/>
  606 + <constraint firstAttribute="width" constant="8" id="f5p-Mv-Ylo"/>
  607 + <constraint firstAttribute="height" constant="8" id="yKI-Iv-ctT"/>
607 608 </constraints>
608 609 </imageView>
609 610 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="上传者:老师" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vag-ao-LKQ">
610   - <rect key="frame" x="0.0" y="175" width="108" height="15"/>
  611 + <rect key="frame" x="0.0" y="191" width="147" height="15"/>
611 612 <constraints>
612 613 <constraint firstAttribute="height" constant="15" id="8nl-am-VuO"/>
613 614 </constraints>
614 615 <fontDescription key="fontDescription" type="system" pointSize="12"/>
615   - <nil key="textColor"/>
  616 + <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
616 617 <nil key="highlightedColor"/>
617 618 </label>
618 619 </subviews>
619 620 </view>
  621 + <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
620 622 <constraints>
621   - <constraint firstItem="Ens-w5-JNf" firstAttribute="leading" secondItem="j8z-Dm-5mL" secondAttribute="trailing" constant="2.5" id="64X-uP-6eu"/>
622   - <constraint firstAttribute="trailing" secondItem="vag-ao-LKQ" secondAttribute="trailing" constant="5" id="8jK-AG-5BE"/>
623   - <constraint firstItem="q2O-JU-nOk" firstAttribute="top" secondItem="vag-ao-LKQ" secondAttribute="bottom" constant="8" id="BxM-zs-idP"/>
624   - <constraint firstAttribute="bottomMargin" secondItem="j8z-Dm-5mL" secondAttribute="bottom" id="CTt-Wl-pgl"/>
625   - <constraint firstAttribute="bottom" secondItem="Ens-w5-JNf" secondAttribute="bottom" constant="8" id="CYj-Yh-ykl"/>
  623 + <constraint firstItem="Ens-w5-JNf" firstAttribute="leading" secondItem="j8z-Dm-5mL" secondAttribute="trailing" id="64X-uP-6eu"/>
  624 + <constraint firstAttribute="trailing" secondItem="vag-ao-LKQ" secondAttribute="trailing" id="8jK-AG-5BE"/>
  625 + <constraint firstItem="q2O-JU-nOk" firstAttribute="top" secondItem="vag-ao-LKQ" secondAttribute="bottom" constant="10" id="BxM-zs-idP"/>
  626 + <constraint firstAttribute="bottom" secondItem="Ens-w5-JNf" secondAttribute="bottom" constant="15" id="CYj-Yh-ykl"/>
626 627 <constraint firstItem="vag-ao-LKQ" firstAttribute="leading" secondItem="gdp-Ji-zur" secondAttribute="leading" id="Djn-nH-5tu"/>
627   - <constraint firstItem="vag-ao-LKQ" firstAttribute="top" secondItem="Zk6-bu-T1Z" secondAttribute="bottom" constant="8" id="TUh-h3-ZgZ"/>
628   - <constraint firstAttribute="bottom" secondItem="q2O-JU-nOk" secondAttribute="bottom" constant="8" id="URf-Pj-lNP"/>
  628 + <constraint firstItem="vag-ao-LKQ" firstAttribute="top" secondItem="Zk6-bu-T1Z" secondAttribute="bottom" constant="10" id="TUh-h3-ZgZ"/>
  629 + <constraint firstAttribute="bottom" secondItem="q2O-JU-nOk" secondAttribute="bottom" constant="15" id="URf-Pj-lNP"/>
629 630 <constraint firstItem="Zk6-bu-T1Z" firstAttribute="leading" secondItem="gdp-Ji-zur" secondAttribute="leading" id="Vng-Q4-dJt"/>
630   - <constraint firstAttribute="trailing" secondItem="Ens-w5-JNf" secondAttribute="trailing" constant="5" id="WIv-BG-KUZ"/>
  631 + <constraint firstAttribute="trailing" secondItem="Ens-w5-JNf" secondAttribute="trailing" id="WIv-BG-KUZ"/>
631 632 <constraint firstItem="bUk-R1-5gT" firstAttribute="leading" secondItem="gdp-Ji-zur" secondAttribute="leading" id="X8S-q4-Yjy"/>
632   - <constraint firstAttribute="trailing" secondItem="Zk6-bu-T1Z" secondAttribute="trailing" constant="5" id="ZCV-WC-xJv"/>
633   - <constraint firstAttribute="trailingMargin" secondItem="q2O-JU-nOk" secondAttribute="trailing" constant="61" id="ojG-9i-zX4"/>
  633 + <constraint firstAttribute="trailing" secondItem="Zk6-bu-T1Z" secondAttribute="trailing" id="ZCV-WC-xJv"/>
  634 + <constraint firstAttribute="trailingMargin" secondItem="q2O-JU-nOk" secondAttribute="trailing" constant="39" id="ojG-9i-zX4"/>
634 635 <constraint firstItem="bUk-R1-5gT" firstAttribute="top" secondItem="gdp-Ji-zur" secondAttribute="top" id="q6C-YR-cFO"/>
635 636 <constraint firstItem="q2O-JU-nOk" firstAttribute="leading" secondItem="gdp-Ji-zur" secondAttribute="leading" id="qUh-gl-kWl"/>
636   - <constraint firstAttribute="trailing" secondItem="bUk-R1-5gT" secondAttribute="trailing" constant="5" id="xj0-qF-rhP"/>
  637 + <constraint firstAttribute="bottomMargin" secondItem="j8z-Dm-5mL" secondAttribute="bottom" constant="10" id="vef-74-Jan"/>
  638 + <constraint firstAttribute="trailing" secondItem="bUk-R1-5gT" secondAttribute="trailing" id="xj0-qF-rhP"/>
637 639 </constraints>
638 640 <connections>
639 641 <outlet property="dateLabel" destination="q2O-JU-nOk" id="cCA-VL-aAf"/>
... ... @@ -651,61 +653,61 @@
651 653 </collectionView>
652 654 </subviews>
653 655 <constraints>
654   - <constraint firstItem="Tib-Fm-A1U" firstAttribute="top" secondItem="9Zz-SB-8Fl" secondAttribute="bottom" constant="8" id="35X-cd-fAU"/>
655   - <constraint firstItem="nKJ-qz-sg8" firstAttribute="top" secondItem="9Zz-SB-8Fl" secondAttribute="bottom" constant="13" id="A8h-XS-V9X"/>
656   - <constraint firstItem="UWk-5A-PEj" firstAttribute="leading" secondItem="kA1-Za-kS2" secondAttribute="leading" constant="8" id="GTt-JU-67B"/>
  656 + <constraint firstItem="Tib-Fm-A1U" firstAttribute="top" secondItem="9Zz-SB-8Fl" secondAttribute="bottom" constant="17.5" id="35X-cd-fAU"/>
  657 + <constraint firstItem="nKJ-qz-sg8" firstAttribute="top" secondItem="9Zz-SB-8Fl" secondAttribute="bottom" constant="16" id="A8h-XS-V9X"/>
  658 + <constraint firstItem="UWk-5A-PEj" firstAttribute="leading" secondItem="kA1-Za-kS2" secondAttribute="leading" constant="15" id="GTt-JU-67B"/>
657 659 <constraint firstAttribute="bottom" secondItem="0uI-9D-XVZ" secondAttribute="bottom" id="IiM-YI-cmg"/>
658   - <constraint firstItem="0uI-9D-XVZ" firstAttribute="top" secondItem="Tib-Fm-A1U" secondAttribute="bottom" constant="25" id="NOs-5g-r1E"/>
659   - <constraint firstAttribute="trailing" secondItem="Tib-Fm-A1U" secondAttribute="trailing" constant="8" id="Rg7-Q9-IdK"/>
660   - <constraint firstItem="nKJ-qz-sg8" firstAttribute="leading" secondItem="UWk-5A-PEj" secondAttribute="trailing" constant="8" id="TRM-qN-0jP"/>
  660 + <constraint firstAttribute="trailing" secondItem="Tib-Fm-A1U" secondAttribute="trailing" constant="15" id="Rg7-Q9-IdK"/>
  661 + <constraint firstItem="nKJ-qz-sg8" firstAttribute="leading" secondItem="UWk-5A-PEj" secondAttribute="trailing" constant="15" id="TRM-qN-0jP"/>
661 662 <constraint firstAttribute="trailing" secondItem="9Zz-SB-8Fl" secondAttribute="trailing" id="Ujw-UV-mco"/>
662   - <constraint firstItem="UWk-5A-PEj" firstAttribute="top" secondItem="9Zz-SB-8Fl" secondAttribute="bottom" constant="8" id="aKU-kC-KTK"/>
663   - <constraint firstAttribute="trailing" secondItem="0uI-9D-XVZ" secondAttribute="trailing" constant="8" id="c13-N9-TW8"/>
  663 + <constraint firstItem="UWk-5A-PEj" firstAttribute="top" secondItem="9Zz-SB-8Fl" secondAttribute="bottom" constant="15" id="aKU-kC-KTK"/>
  664 + <constraint firstItem="0uI-9D-XVZ" firstAttribute="top" secondItem="UWk-5A-PEj" secondAttribute="bottom" constant="15" id="bLK-59-dco"/>
  665 + <constraint firstAttribute="trailing" secondItem="0uI-9D-XVZ" secondAttribute="trailing" constant="15" id="c13-N9-TW8"/>
664 666 <constraint firstItem="9Zz-SB-8Fl" firstAttribute="leading" secondItem="kA1-Za-kS2" secondAttribute="leading" id="iZd-Ff-YdA"/>
665 667 <constraint firstItem="9Zz-SB-8Fl" firstAttribute="top" secondItem="kA1-Za-kS2" secondAttribute="top" id="io6-vo-MrT"/>
666   - <constraint firstItem="0uI-9D-XVZ" firstAttribute="leading" secondItem="kA1-Za-kS2" secondAttribute="leading" constant="8" id="ivh-0J-PTg"/>
  668 + <constraint firstItem="0uI-9D-XVZ" firstAttribute="leading" secondItem="kA1-Za-kS2" secondAttribute="leading" constant="15" id="ivh-0J-PTg"/>
667 669 </constraints>
668 670 </tableViewCellContentView>
669 671 <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
670 672 </tableViewCell>
671   - <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="cell3" selectionStyle="none" indentationWidth="10" reuseIdentifier="cell3" rowHeight="120" id="u0l-tM-Sps" customClass="HomeFourTableViewCell" customModule="YouerLiveVideo" customModuleProvider="target">
672   - <rect key="frame" x="0.0" y="916" width="375" height="120"/>
  673 + <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="cell3" selectionStyle="none" indentationWidth="10" reuseIdentifier="cell3" rowHeight="200" id="u0l-tM-Sps" customClass="HomeFourTableViewCell" customModule="YouerLiveVideo" customModuleProvider="target">
  674 + <rect key="frame" x="0.0" y="929" width="375" height="200"/>
673 675 <autoresizingMask key="autoresizingMask"/>
674 676 <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="u0l-tM-Sps" id="pAP-UQ-eh8">
675   - <rect key="frame" x="0.0" y="0.0" width="375" height="120"/>
  677 + <rect key="frame" x="0.0" y="0.0" width="375" height="200"/>
676 678 <autoresizingMask key="autoresizingMask"/>
677 679 <subviews>
678 680 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Mv3-YA-1zb">
679   - <rect key="frame" x="0.0" y="0.0" width="375" height="20"/>
  681 + <rect key="frame" x="0.0" y="0.0" width="375" height="15"/>
680 682 <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
681 683 <constraints>
682   - <constraint firstAttribute="height" constant="20" id="8kZ-Qb-uv0"/>
  684 + <constraint firstAttribute="height" constant="15" id="8kZ-Qb-uv0"/>
683 685 </constraints>
684 686 </view>
685 687 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="NyS-EO-TLP">
686   - <rect key="frame" x="8" y="28" width="30" height="30"/>
  688 + <rect key="frame" x="15" y="30" width="20" height="20"/>
687 689 <constraints>
688   - <constraint firstAttribute="width" constant="30" id="3VH-BC-Dg6"/>
689   - <constraint firstAttribute="height" constant="30" id="FB0-l5-0Jp"/>
  690 + <constraint firstAttribute="width" constant="20" id="3VH-BC-Dg6"/>
  691 + <constraint firstAttribute="height" constant="20" id="FB0-l5-0Jp"/>
690 692 </constraints>
691 693 </imageView>
692 694 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="TE2-1P-sZs">
693   - <rect key="frame" x="337" y="28" width="30" height="30"/>
  695 + <rect key="frame" x="352" y="32.5" width="8" height="15"/>
694 696 <constraints>
695   - <constraint firstAttribute="height" constant="30" id="EJo-or-6w8"/>
696   - <constraint firstAttribute="width" constant="30" id="HqT-ZX-Hf6"/>
  697 + <constraint firstAttribute="height" constant="15" id="EJo-or-6w8"/>
  698 + <constraint firstAttribute="width" constant="8" id="HqT-ZX-Hf6"/>
697 699 </constraints>
698 700 </imageView>
699 701 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="校园电视台" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="UbK-Rj-Fs5">
700   - <rect key="frame" x="46" y="33" width="87" height="21"/>
701   - <fontDescription key="fontDescription" type="system" pointSize="17"/>
702   - <color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
  702 + <rect key="frame" x="50" y="30" width="82" height="20"/>
  703 + <fontDescription key="fontDescription" type="system" pointSize="16"/>
  704 + <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
703 705 <nil key="highlightedColor"/>
704 706 </label>
705 707 <collectionView clipsSubviews="YES" multipleTouchEnabled="YES" tag="1" contentMode="scaleToFill" dataMode="prototypes" translatesAutoresizingMaskIntoConstraints="NO" id="cYp-Zl-nJm">
706   - <rect key="frame" x="8" y="83" width="359" height="37"/>
  708 + <rect key="frame" x="15" y="65" width="345" height="120"/>
707 709 <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
708   - <collectionViewFlowLayout key="collectionViewLayout" minimumLineSpacing="0.0" minimumInteritemSpacing="8" id="WlM-Mm-GpJ">
  710 + <collectionViewFlowLayout key="collectionViewLayout" minimumLineSpacing="0.0" minimumInteritemSpacing="0.0" id="WlM-Mm-GpJ">
709 711 <size key="itemSize" width="128" height="200"/>
710 712 <size key="headerReferenceSize" width="0.0" height="0.0"/>
711 713 <size key="footerReferenceSize" width="0.0" height="0.0"/>
... ... @@ -725,8 +727,8 @@
725 727 <constraints>
726 728 <constraint firstAttribute="height" constant="30" id="4Og-hL-nhw"/>
727 729 </constraints>
728   - <fontDescription key="fontDescription" type="system" pointSize="15"/>
729   - <nil key="textColor"/>
  730 + <fontDescription key="fontDescription" type="system" pointSize="14"/>
  731 + <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
730 732 <nil key="highlightedColor"/>
731 733 </label>
732 734 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="ZWf-Th-UTw">
... ... @@ -758,19 +760,19 @@
758 760 </collectionView>
759 761 </subviews>
760 762 <constraints>
761   - <constraint firstItem="NyS-EO-TLP" firstAttribute="top" secondItem="Mv3-YA-1zb" secondAttribute="bottom" constant="8" id="0ke-n8-TrJ"/>
762   - <constraint firstItem="TE2-1P-sZs" firstAttribute="top" secondItem="Mv3-YA-1zb" secondAttribute="bottom" constant="8" id="1KX-Aj-m0i"/>
763   - <constraint firstAttribute="trailing" secondItem="cYp-Zl-nJm" secondAttribute="trailing" constant="8" id="5NS-hQ-HDr"/>
  763 + <constraint firstItem="NyS-EO-TLP" firstAttribute="top" secondItem="Mv3-YA-1zb" secondAttribute="bottom" constant="15" id="0ke-n8-TrJ"/>
  764 + <constraint firstItem="TE2-1P-sZs" firstAttribute="top" secondItem="Mv3-YA-1zb" secondAttribute="bottom" constant="17.5" id="1KX-Aj-m0i"/>
  765 + <constraint firstAttribute="trailing" secondItem="cYp-Zl-nJm" secondAttribute="trailing" constant="15" id="5NS-hQ-HDr"/>
  766 + <constraint firstItem="cYp-Zl-nJm" firstAttribute="top" secondItem="NyS-EO-TLP" secondAttribute="bottom" constant="15" id="7eH-WY-cIS"/>
764 767 <constraint firstItem="Mv3-YA-1zb" firstAttribute="top" secondItem="pAP-UQ-eh8" secondAttribute="top" id="ARU-SJ-pTz"/>
765 768 <constraint firstAttribute="trailing" secondItem="Mv3-YA-1zb" secondAttribute="trailing" id="I4t-Lc-D4H"/>
766   - <constraint firstAttribute="bottom" secondItem="cYp-Zl-nJm" secondAttribute="bottom" id="JIt-5J-1vX"/>
767   - <constraint firstItem="UbK-Rj-Fs5" firstAttribute="top" secondItem="Mv3-YA-1zb" secondAttribute="bottom" constant="13" id="LSN-Sj-8zr"/>
768   - <constraint firstAttribute="trailing" secondItem="TE2-1P-sZs" secondAttribute="trailing" constant="8" id="QlU-44-FxY"/>
769   - <constraint firstItem="cYp-Zl-nJm" firstAttribute="top" secondItem="TE2-1P-sZs" secondAttribute="bottom" constant="25" id="VVE-0S-GvV"/>
770   - <constraint firstItem="cYp-Zl-nJm" firstAttribute="leading" secondItem="pAP-UQ-eh8" secondAttribute="leading" constant="8" id="aI8-UO-9NX"/>
  769 + <constraint firstAttribute="bottom" secondItem="cYp-Zl-nJm" secondAttribute="bottom" constant="15" id="JIt-5J-1vX"/>
  770 + <constraint firstItem="UbK-Rj-Fs5" firstAttribute="top" secondItem="Mv3-YA-1zb" secondAttribute="bottom" constant="15" id="LSN-Sj-8zr"/>
  771 + <constraint firstAttribute="trailing" secondItem="TE2-1P-sZs" secondAttribute="trailing" constant="15" id="QlU-44-FxY"/>
  772 + <constraint firstItem="cYp-Zl-nJm" firstAttribute="leading" secondItem="pAP-UQ-eh8" secondAttribute="leading" constant="15" id="aI8-UO-9NX"/>
771 773 <constraint firstItem="Mv3-YA-1zb" firstAttribute="leading" secondItem="pAP-UQ-eh8" secondAttribute="leading" id="cWh-v4-slW"/>
772   - <constraint firstItem="NyS-EO-TLP" firstAttribute="leading" secondItem="pAP-UQ-eh8" secondAttribute="leading" constant="8" id="hQw-PE-ApU"/>
773   - <constraint firstItem="UbK-Rj-Fs5" firstAttribute="leading" secondItem="NyS-EO-TLP" secondAttribute="trailing" constant="8" id="vTs-ac-et0"/>
  774 + <constraint firstItem="NyS-EO-TLP" firstAttribute="leading" secondItem="pAP-UQ-eh8" secondAttribute="leading" constant="15" id="hQw-PE-ApU"/>
  775 + <constraint firstItem="UbK-Rj-Fs5" firstAttribute="leading" secondItem="NyS-EO-TLP" secondAttribute="trailing" constant="15" id="vTs-ac-et0"/>
774 776 </constraints>
775 777 </tableViewCellContentView>
776 778 <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
... ... @@ -783,7 +785,7 @@
783 785 <outlet property="delegate" destination="HdB-6p-eAX" id="k2q-uw-6l0"/>
784 786 </connections>
785 787 </tableView>
786   - <navigationItem key="navigationItem" id="u6G-VK-Ob0">
  788 + <navigationItem key="navigationItem" title="教育视频云" id="u6G-VK-Ob0">
787 789 <barButtonItem key="rightBarButtonItem" systemItem="search" id="Wrt-Tt-zFU">
788 790 <connections>
789 791 <action selector="rightBarButtonAction:" destination="HdB-6p-eAX" id="FCr-SK-pbu"/>
... ... @@ -829,7 +831,7 @@
829 831 <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
830 832 <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
831 833 </view>
832   - <navigationItem key="navigationItem" id="bcC-ei-aNW"/>
  834 + <navigationItem key="navigationItem" title="用户" id="KBV-ql-Taf"/>
833 835 </viewController>
834 836 <placeholder placeholderIdentifier="IBFirstResponder" id="yJD-YG-4bQ" userLabel="First Responder" sceneMemberID="firstResponder"/>
835 837 </objects>
... ... @@ -1121,7 +1123,7 @@
1121 1123 </navigationBar>
1122 1124 <nil name="viewControllers"/>
1123 1125 <connections>
1124   - <segue destination="QLA-FR-CcL" kind="relationship" relationship="rootViewController" id="dfQ-M1-wUC"/>
  1126 + <segue destination="VUr-8w-9Ht" kind="relationship" relationship="rootViewController" id="jMk-GJ-Z4f"/>
1125 1127 </connections>
1126 1128 </navigationController>
1127 1129 <placeholder placeholderIdentifier="IBFirstResponder" id="xYG-HE-dff" userLabel="First Responder" sceneMemberID="firstResponder"/>
... ... @@ -1186,7 +1188,7 @@
1186 1188 <rect key="frame" x="0.0" y="28" width="375" height="178"/>
1187 1189 <autoresizingMask key="autoresizingMask"/>
1188 1190 <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="8PR-k0-hwX" id="Bb0-oI-ccB">
1189   - <rect key="frame" x="0.0" y="0.0" width="375" height="177"/>
  1191 + <rect key="frame" x="0.0" y="0.0" width="375" height="178"/>
1190 1192 <autoresizingMask key="autoresizingMask"/>
1191 1193 <subviews>
1192 1194 <collectionView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" dataMode="prototypes" translatesAutoresizingMaskIntoConstraints="NO" id="m0I-jk-Iru">
... ... @@ -1265,7 +1267,7 @@
1265 1267 </constraints>
1266 1268 </view>
1267 1269 <tabBarItem key="tabBarItem" tag="3" title="电视台" id="s3g-mh-Xtl"/>
1268   - <navigationItem key="navigationItem" id="4l0-y8-1gT"/>
  1270 + <navigationItem key="navigationItem" title="电视台" id="lwd-0v-qoO"/>
1269 1271 <connections>
1270 1272 <outlet property="tableView" destination="IhH-sz-Bd2" id="ut2-uV-tkE"/>
1271 1273 </connections>
... ... @@ -1293,6 +1295,233 @@
1293 1295 </objects>
1294 1296 <point key="canvasLocation" x="-1838" y="1415"/>
1295 1297 </scene>
  1298 + <!--微课-->
  1299 + <scene sceneID="79n-r8-6SR">
  1300 + <objects>
  1301 + <viewController automaticallyAdjustsScrollViewInsets="NO" id="VUr-8w-9Ht" customClass="MicroCourseViewController" customModule="YouerLiveVideo" customModuleProvider="target" sceneMemberID="viewController">
  1302 + <layoutGuides>
  1303 + <viewControllerLayoutGuide type="top" id="Laj-Zw-b49"/>
  1304 + <viewControllerLayoutGuide type="bottom" id="42u-nx-d5t"/>
  1305 + </layoutGuides>
  1306 + <view key="view" contentMode="scaleToFill" id="xBZ-wH-l5a">
  1307 + <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
  1308 + <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
  1309 + <subviews>
  1310 + <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="lPK-PF-JgI">
  1311 + <rect key="frame" x="0.0" y="108" width="375" height="50"/>
  1312 + <subviews>
  1313 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text=" " textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="0HY-Rz-WhJ">
  1314 + <rect key="frame" x="8" y="16" width="4" height="18"/>
  1315 + <fontDescription key="fontDescription" type="system" pointSize="15"/>
  1316 + <nil key="textColor"/>
  1317 + <nil key="highlightedColor"/>
  1318 + </label>
  1319 + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="4xl-zG-lqH">
  1320 + <rect key="frame" x="310" y="10" width="57" height="30"/>
  1321 + <constraints>
  1322 + <constraint firstAttribute="height" constant="30" id="xBx-gX-mw4"/>
  1323 + </constraints>
  1324 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  1325 + <state key="normal" title="筛选" image="starLive">
  1326 + <color key="titleColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
  1327 + </state>
  1328 + </button>
  1329 + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="T2j-JJ-ft5">
  1330 + <rect key="frame" x="245" y="14" width="57" height="22"/>
  1331 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  1332 + <state key="normal" title="排序" image="starLive">
  1333 + <color key="titleColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
  1334 + </state>
  1335 + </button>
  1336 + </subviews>
  1337 + <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
  1338 + <constraints>
  1339 + <constraint firstItem="4xl-zG-lqH" firstAttribute="leading" secondItem="T2j-JJ-ft5" secondAttribute="trailing" constant="8" id="5PE-bJ-7gA"/>
  1340 + <constraint firstItem="0HY-Rz-WhJ" firstAttribute="leading" secondItem="lPK-PF-JgI" secondAttribute="leading" constant="8" id="6JE-7G-RGu"/>
  1341 + <constraint firstItem="0HY-Rz-WhJ" firstAttribute="centerY" secondItem="lPK-PF-JgI" secondAttribute="centerY" id="9D4-TG-1g8"/>
  1342 + <constraint firstAttribute="trailing" secondItem="4xl-zG-lqH" secondAttribute="trailing" constant="8" id="Cdo-PV-fQ7"/>
  1343 + <constraint firstAttribute="height" constant="50" id="HmH-xv-An6"/>
  1344 + <constraint firstItem="T2j-JJ-ft5" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="0HY-Rz-WhJ" secondAttribute="trailing" constant="8" id="agG-vQ-QPp"/>
  1345 + <constraint firstItem="T2j-JJ-ft5" firstAttribute="centerY" secondItem="lPK-PF-JgI" secondAttribute="centerY" id="bcz-kZ-cO2"/>
  1346 + <constraint firstItem="4xl-zG-lqH" firstAttribute="centerY" secondItem="lPK-PF-JgI" secondAttribute="centerY" id="pAW-vr-qJ8"/>
  1347 + </constraints>
  1348 + </view>
  1349 + <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="none" rowHeight="143" sectionHeaderHeight="28" sectionFooterHeight="28" translatesAutoresizingMaskIntoConstraints="NO" id="8oF-hk-183">
  1350 + <rect key="frame" x="0.0" y="158" width="375" height="460"/>
  1351 + <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
  1352 + <view key="tableFooterView" contentMode="scaleToFill" id="DCR-ac-r7t">
  1353 + <rect key="frame" x="0.0" y="171" width="375" height="1"/>
  1354 + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
  1355 + <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
  1356 + </view>
  1357 + <prototypes>
  1358 + <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" reuseIdentifier="identifier" rowHeight="143" id="IlC-3c-gI6" customClass="MicroCourseViewControllerTableViewCell" customModule="YouerLiveVideo" customModuleProvider="target">
  1359 + <rect key="frame" x="0.0" y="28" width="375" height="143"/>
  1360 + <autoresizingMask key="autoresizingMask"/>
  1361 + <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="IlC-3c-gI6" id="UCf-3H-9B1">
  1362 + <rect key="frame" x="0.0" y="0.0" width="375" height="143"/>
  1363 + <autoresizingMask key="autoresizingMask"/>
  1364 + <subviews>
  1365 + <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="qia-pR-e6p">
  1366 + <rect key="frame" x="8" y="27" width="90" height="90"/>
  1367 + <constraints>
  1368 + <constraint firstAttribute="width" secondItem="qia-pR-e6p" secondAttribute="height" multiplier="1:1" id="6Zi-MO-Pqe"/>
  1369 + <constraint firstAttribute="width" constant="90" id="NEy-T9-LCS"/>
  1370 + </constraints>
  1371 + </imageView>
  1372 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="i7I-v8-vVY">
  1373 + <rect key="frame" x="114" y="32" width="165" height="21"/>
  1374 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  1375 + <nil key="textColor"/>
  1376 + <nil key="highlightedColor"/>
  1377 + </label>
  1378 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="zNu-DX-cwZ">
  1379 + <rect key="frame" x="114" y="61" width="42" height="21"/>
  1380 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  1381 + <color key="textColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/>
  1382 + <nil key="highlightedColor"/>
  1383 + </label>
  1384 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vTt-gy-eUu">
  1385 + <rect key="frame" x="114" y="90" width="42" height="21"/>
  1386 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  1387 + <color key="textColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/>
  1388 + <nil key="highlightedColor"/>
  1389 + </label>
  1390 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Oz8-OI-zTn">
  1391 + <rect key="frame" x="325" y="90" width="42" height="21"/>
  1392 + <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
  1393 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  1394 + <nil key="textColor"/>
  1395 + <nil key="highlightedColor"/>
  1396 + </label>
  1397 + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="jqG-kN-3bx">
  1398 + <rect key="frame" x="287" y="25" width="80" height="35"/>
  1399 + <color key="backgroundColor" red="0.0" green="0.47843137250000001" blue="1" alpha="1" colorSpace="calibratedRGB"/>
  1400 + <constraints>
  1401 + <constraint firstAttribute="width" constant="80" id="Alz-7v-3a2"/>
  1402 + <constraint firstAttribute="height" constant="35" id="CuG-T4-QtE"/>
  1403 + </constraints>
  1404 + <state key="normal" title="预览">
  1405 + <color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
  1406 + </state>
  1407 + <connections>
  1408 + <action selector="pushDetailVC:" destination="IlC-3c-gI6" eventType="touchUpInside" id="3BZ-om-ppg"/>
  1409 + </connections>
  1410 + </button>
  1411 + <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon" translatesAutoresizingMaskIntoConstraints="NO" id="anY-xC-gfl">
  1412 + <rect key="frame" x="297" y="91" width="20" height="20"/>
  1413 + <constraints>
  1414 + <constraint firstAttribute="width" constant="20" id="FKY-fi-PSd"/>
  1415 + <constraint firstAttribute="width" secondItem="anY-xC-gfl" secondAttribute="height" multiplier="1:1" id="mbe-Kb-gfh"/>
  1416 + </constraints>
  1417 + </imageView>
  1418 + </subviews>
  1419 + <constraints>
  1420 + <constraint firstItem="zNu-DX-cwZ" firstAttribute="leading" secondItem="i7I-v8-vVY" secondAttribute="leading" id="Ass-bq-7Zl"/>
  1421 + <constraint firstItem="vTt-gy-eUu" firstAttribute="top" secondItem="zNu-DX-cwZ" secondAttribute="bottom" constant="8" id="EPW-Rs-PaM"/>
  1422 + <constraint firstItem="jqG-kN-3bx" firstAttribute="centerY" secondItem="i7I-v8-vVY" secondAttribute="centerY" id="FzT-Id-AQY"/>
  1423 + <constraint firstItem="zNu-DX-cwZ" firstAttribute="top" secondItem="i7I-v8-vVY" secondAttribute="bottom" constant="8" id="H53-aB-vEZ"/>
  1424 + <constraint firstItem="zNu-DX-cwZ" firstAttribute="centerY" secondItem="UCf-3H-9B1" secondAttribute="centerY" id="O4n-ki-c8K"/>
  1425 + <constraint firstAttribute="trailing" secondItem="jqG-kN-3bx" secondAttribute="trailing" constant="8" id="XZT-II-opg"/>
  1426 + <constraint firstItem="Oz8-OI-zTn" firstAttribute="centerY" secondItem="vTt-gy-eUu" secondAttribute="centerY" id="bae-Ey-mlX"/>
  1427 + <constraint firstItem="vTt-gy-eUu" firstAttribute="leading" secondItem="qia-pR-e6p" secondAttribute="trailing" constant="16" id="cFH-UN-Qnu"/>
  1428 + <constraint firstItem="jqG-kN-3bx" firstAttribute="leading" secondItem="i7I-v8-vVY" secondAttribute="trailing" constant="8" id="cNZ-nJ-MDk"/>
  1429 + <constraint firstItem="qia-pR-e6p" firstAttribute="centerY" secondItem="UCf-3H-9B1" secondAttribute="centerY" id="hob-KD-eVv"/>
  1430 + <constraint firstItem="vTt-gy-eUu" firstAttribute="leading" secondItem="i7I-v8-vVY" secondAttribute="leading" id="kOI-Sj-8v1"/>
  1431 + <constraint firstAttribute="trailing" secondItem="Oz8-OI-zTn" secondAttribute="trailing" constant="8" id="kfE-GK-2DJ"/>
  1432 + <constraint firstItem="qia-pR-e6p" firstAttribute="leading" secondItem="UCf-3H-9B1" secondAttribute="leading" constant="8" id="kx2-7H-uKO"/>
  1433 + <constraint firstItem="Oz8-OI-zTn" firstAttribute="leading" secondItem="anY-xC-gfl" secondAttribute="trailing" constant="8" id="pT2-e6-5EY"/>
  1434 + <constraint firstItem="anY-xC-gfl" firstAttribute="centerY" secondItem="vTt-gy-eUu" secondAttribute="centerY" id="rfk-nx-qtP"/>
  1435 + </constraints>
  1436 + </tableViewCellContentView>
  1437 + <connections>
  1438 + <outlet property="downLoadCountLabel" destination="Oz8-OI-zTn" id="sKQ-bv-sBt"/>
  1439 + <outlet property="iconImageView" destination="qia-pR-e6p" id="Sjz-Ns-eLD"/>
  1440 + <outlet property="timeLabel" destination="vTt-gy-eUu" id="P8r-uE-wDA"/>
  1441 + <outlet property="titleLabel" destination="i7I-v8-vVY" id="pfz-yx-JR0"/>
  1442 + <outlet property="updateTeacherLabel" destination="zNu-DX-cwZ" id="dI3-Y7-cVY"/>
  1443 + </connections>
  1444 + </tableViewCell>
  1445 + </prototypes>
  1446 + <connections>
  1447 + <outlet property="dataSource" destination="VUr-8w-9Ht" id="m6b-QU-EJf"/>
  1448 + <outlet property="delegate" destination="VUr-8w-9Ht" id="bYV-x9-9gZ"/>
  1449 + </connections>
  1450 + </tableView>
  1451 + <view hidden="YES" alpha="0.30000001192092896" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="oeL-YH-vse">
  1452 + <rect key="frame" x="0.0" y="64" width="375" height="554"/>
  1453 + <color key="backgroundColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
  1454 + <gestureRecognizers/>
  1455 + <connections>
  1456 + <outletCollection property="gestureRecognizers" destination="8sK-Sj-kmY" appends="YES" id="KFj-3I-QoP"/>
  1457 + </connections>
  1458 + </view>
  1459 + <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="28" sectionFooterHeight="28" translatesAutoresizingMaskIntoConstraints="NO" id="Yg9-Z1-sYr">
  1460 + <rect key="frame" x="0.0" y="64" width="375" height="44"/>
  1461 + <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
  1462 + <constraints>
  1463 + <constraint firstAttribute="height" constant="44" id="s3i-TZ-HsX"/>
  1464 + </constraints>
  1465 + <prototypes>
  1466 + <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="cell" id="OoX-sY-EJ0">
  1467 + <rect key="frame" x="0.0" y="28" width="375" height="44"/>
  1468 + <autoresizingMask key="autoresizingMask"/>
  1469 + <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="OoX-sY-EJ0" id="cE2-H1-hR9">
  1470 + <rect key="frame" x="0.0" y="0.0" width="375" height="43"/>
  1471 + <autoresizingMask key="autoresizingMask"/>
  1472 + </tableViewCellContentView>
  1473 + </tableViewCell>
  1474 + </prototypes>
  1475 + <connections>
  1476 + <outlet property="dataSource" destination="VUr-8w-9Ht" id="GQe-Yj-UHr"/>
  1477 + <outlet property="delegate" destination="VUr-8w-9Ht" id="ZYz-Kt-cgh"/>
  1478 + </connections>
  1479 + </tableView>
  1480 + </subviews>
  1481 + <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
  1482 + <constraints>
  1483 + <constraint firstItem="42u-nx-d5t" firstAttribute="top" secondItem="8oF-hk-183" secondAttribute="bottom" id="1yo-Qy-DQK"/>
  1484 + <constraint firstAttribute="trailing" secondItem="lPK-PF-JgI" secondAttribute="trailing" id="6hx-sN-wTU"/>
  1485 + <constraint firstItem="8oF-hk-183" firstAttribute="top" secondItem="lPK-PF-JgI" secondAttribute="bottom" id="BDa-XJ-LSu"/>
  1486 + <constraint firstItem="8oF-hk-183" firstAttribute="leading" secondItem="xBZ-wH-l5a" secondAttribute="leading" id="C7J-5R-PYq"/>
  1487 + <constraint firstItem="lPK-PF-JgI" firstAttribute="top" secondItem="Laj-Zw-b49" secondAttribute="bottom" constant="44" id="CEn-Bg-nNB"/>
  1488 + <constraint firstItem="Yg9-Z1-sYr" firstAttribute="leading" secondItem="xBZ-wH-l5a" secondAttribute="leading" id="GrW-hf-xZM"/>
  1489 + <constraint firstItem="42u-nx-d5t" firstAttribute="top" secondItem="oeL-YH-vse" secondAttribute="bottom" id="J26-Py-ZAB"/>
  1490 + <constraint firstAttribute="trailing" secondItem="8oF-hk-183" secondAttribute="trailing" id="RHq-uI-I05"/>
  1491 + <constraint firstItem="oeL-YH-vse" firstAttribute="top" secondItem="Laj-Zw-b49" secondAttribute="bottom" id="Uct-5h-aXd"/>
  1492 + <constraint firstItem="oeL-YH-vse" firstAttribute="leading" secondItem="xBZ-wH-l5a" secondAttribute="leading" id="VHh-4q-p5A"/>
  1493 + <constraint firstAttribute="trailing" secondItem="oeL-YH-vse" secondAttribute="trailing" id="gfN-Gs-rxt"/>
  1494 + <constraint firstAttribute="trailing" secondItem="Yg9-Z1-sYr" secondAttribute="trailing" id="jdR-Zl-EUe"/>
  1495 + <constraint firstItem="lPK-PF-JgI" firstAttribute="leading" secondItem="xBZ-wH-l5a" secondAttribute="leading" id="jx1-xS-L8s"/>
  1496 + <constraint firstItem="Yg9-Z1-sYr" firstAttribute="top" secondItem="Laj-Zw-b49" secondAttribute="bottom" id="sau-r2-QN3"/>
  1497 + </constraints>
  1498 + </view>
  1499 + <navigationItem key="navigationItem" title="微课" id="Lae-MV-KD3"/>
  1500 + <connections>
  1501 + <outlet property="grayView" destination="oeL-YH-vse" id="BIQ-VX-L39"/>
  1502 + <outlet property="searchDisplayController" destination="k0q-9e-h1a" id="gOP-tZ-Dkg"/>
  1503 + <outlet property="searchTableHeight" destination="s3i-TZ-HsX" id="KmT-xe-n12"/>
  1504 + <outlet property="searchTableView" destination="Yg9-Z1-sYr" id="Kd3-AM-8Bo"/>
  1505 + <outlet property="tableView" destination="8oF-hk-183" id="Nph-zZ-Dw1"/>
  1506 + </connections>
  1507 + </viewController>
  1508 + <placeholder placeholderIdentifier="IBFirstResponder" id="ke0-TQ-V4A" userLabel="First Responder" sceneMemberID="firstResponder"/>
  1509 + <searchDisplayController id="OBp-V3-aA1">
  1510 + <connections>
  1511 + <outlet property="delegate" destination="VUr-8w-9Ht" id="5WH-a0-hwZ"/>
  1512 + <outlet property="searchContentsController" destination="VUr-8w-9Ht" id="BVs-1N-QBz"/>
  1513 + <outlet property="searchResultsDataSource" destination="VUr-8w-9Ht" id="uls-gM-d1p"/>
  1514 + <outlet property="searchResultsDelegate" destination="VUr-8w-9Ht" id="xj5-eO-hc3"/>
  1515 + </connections>
  1516 + </searchDisplayController>
  1517 + <tapGestureRecognizer id="8sK-Sj-kmY">
  1518 + <connections>
  1519 + <action selector="cancleSearchActivit:" destination="VUr-8w-9Ht" id="qlk-qa-KJe"/>
  1520 + </connections>
  1521 + </tapGestureRecognizer>
  1522 + </objects>
  1523 + <point key="canvasLocation" x="-340" y="2112.5937031484259"/>
  1524 + </scene>
1296 1525 </scenes>
1297 1526 <resources>
1298 1527 <image name="arrow" width="33" height="33"/>
... ...
YouerLiveVideo/YouerLiveVideo/controllers/HomePage/MainHomeTableViewController.swift
... ... @@ -80,12 +80,14 @@ class MainHomeTableViewController: UITableViewController {
80 80 return 4
81 81 }
82 82 override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
83   - if indexPath.row==0 || indexPath.row==1{
84   - return (getScreenWidth()-16)/2+86
  83 + if indexPath.row==0{
  84 + return (getScreenWidth()-45)/2/33*25+80
  85 + }else if indexPath.row==1{
  86 + return (getScreenWidth()-45)/2/33*16+132
85 87 }else if indexPath.row==2{
86   - return (getScreenWidth()-16)/3+103+86
  88 + return (getScreenWidth()-40)/3+170.5
87 89 }else{
88   - return (getScreenWidth()-30)/3+30+86
  90 + return (getScreenWidth()-40)/3+110
89 91 }
90 92 }
91 93 override func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
... ... @@ -153,7 +155,7 @@ class HomeFirstTableViewCell: UITableViewCell,UICollectionViewDelegate,UICollect
153 155 }
154 156 }
155 157 func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
156   - return CGSize(width: (getScreenWidth()-16)/2, height: (getScreenWidth()-16)/2)
  158 + return CGSize(width: (getScreenWidth()-45)/2, height: (getScreenWidth()-45)/2/33*25)
157 159 }
158 160  
159 161 func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
... ... @@ -207,7 +209,7 @@ class HomeSecondTableViewCell: UITableViewCell,UICollectionViewDelegate,UICollec
207 209 NSLog("点击了****\(dataSet[indexPath.row])")
208 210 }
209 211 func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
210   - return CGSize(width: (getScreenWidth()-16)/2, height: (getScreenWidth()-16)/2)
  212 + return CGSize(width: (getScreenWidth()-45)/2, height: ((getScreenWidth()-45)/2/33*16+67))
211 213 }
212 214 func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
213 215 return dataSet.count
... ... @@ -329,7 +331,7 @@ class HomeThirdTableViewCell: UITableViewCell,UICollectionViewDelegate,UICollect
329 331 NSLog("点击了****\(dataSet[indexPath.row])")
330 332 }
331 333 func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
332   - return CGSize(width: (getScreenWidth()-16)/3, height: (getScreenWidth()-16)/3+103)
  334 + return CGSize(width: (getScreenWidth()-40)/3, height: (getScreenWidth()-40)/3+105.5)
333 335 }
334 336 func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
335 337 return dataSet.count
... ... @@ -388,7 +390,7 @@ class HomeFourTableViewCell: UITableViewCell,UICollectionViewDelegate,UICollecti
388 390 NSLog("点击了****\(dataSet[indexPath.row])")
389 391 }
390 392 func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
391   - return CGSize(width: (getScreenWidth()-32)/3, height: (getScreenWidth()-32)/3+30)
  393 + return CGSize(width: (getScreenWidth()-40)/3, height: (getScreenWidth()-40)/3+30)
392 394 }
393 395 func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
394 396 return dataSet.count
... ...
YouerLiveVideo/YouerLiveVideo/controllers/MicroCourse/MicroCourseViewController.swift
... ... @@ -8,28 +8,176 @@
8 8  
9 9 import UIKit
10 10  
11   -class MicroCourseViewController: UIViewController {
12   -
  11 +class MicroCourseViewController: UIViewController,UITableViewDelegate,UITableViewDataSource,UISearchControllerDelegate,UISearchResultsUpdating {
  12 + @IBOutlet var tableView: UITableView!
  13 +
  14 + @IBOutlet var grayView: UIView!
  15 + @IBOutlet var searchTableView: UITableView!
  16 + @IBOutlet var searchTableHeight: NSLayoutConstraint!
  17 +
  18 + var searchController:UISearchController!
  19 + var dataSetAry:[String]=["葛建军","张道峰","徐晓杰","左承","段合江"]
  20 + var searchAry:[String]=[]
  21 + var currentPage:Int=0 //当前页数,每次取十个数据
  22 + var resourceData:[MicroCourseModel]=[]
13 23 override func viewDidLoad() {
14 24 super.viewDidLoad()
15 25 self.configTheme()
16   - // Do any additional setup after loading the view.
  26 + addSearchController()
  27 + addRefresh()
  28 + self.refreshLivesAction(tag: self.currentPage, completionHandler: { (success) in
  29 + if success{
  30 + self.tableView.reloadData()
  31 + }
  32 + })
17 33 }
18   -
19   - override func didReceiveMemoryWarning() {
20   - super.didReceiveMemoryWarning()
21   - // Dispose of any resources that can be recreated.
  34 + func addSearchController(){
  35 + self.definesPresentationContext=true
  36 + searchController=UISearchController(searchResultsController: nil)
  37 + searchController.delegate=self
  38 + searchController.searchResultsUpdater=self
  39 + searchController.searchBar.barTintColor=UIColor.groupTableViewBackground
  40 + searchController.searchBar.placeholder="搜索"
  41 + //设置UISearchController的显示属性,以下3个属性默认为YES
  42 + //搜索时,背景变暗色
  43 + self.searchController.dimsBackgroundDuringPresentation=false
  44 + //搜索时,背景变模糊
  45 + // self.searchController.obscuresBackgroundDuringPresentation=false
  46 + //点击搜索的时候,是否隐藏导航栏
  47 + // searchController.hidesNavigationBarDuringPresentation=true
  48 + //位置
  49 + searchController.searchBar.frame=CGRect(x: self.searchController.searchBar.frame.origin.x, y: self.searchController.searchBar.frame.origin.y, width: self.searchController.searchBar.frame.size.width, height: 44.0);
  50 + // self.view.addSubview(searchController.searchBar)
  51 + searchTableView.tableHeaderView=searchController.searchBar
  52 + }
  53 + func addRefresh(){
  54 + let header=MJRefreshNormalHeader(refreshingBlock: {
  55 + //下拉刷新
  56 + self.currentPage=0
  57 + self.resourceData.removeAll()
  58 + self.refreshLivesAction(tag: self.currentPage, completionHandler: { (success) in
  59 + if success{
  60 + self.tableView.reloadData()
  61 + }
  62 + self.tableView.mj_header.endRefreshing()
  63 + })
  64 + })
  65 + header?.lastUpdatedTimeLabel.isHidden=true
  66 + tableView.mj_header=header
  67 + tableView.mj_footer=MJRefreshBackNormalFooter(refreshingBlock: {
  68 + //上拉加载更多
  69 + self.refreshLivesAction(tag: self.currentPage, completionHandler: { (success) in
  70 + if success{
  71 + self.tableView.reloadData()
  72 + }
  73 + self.tableView.mj_footer.endRefreshing()
  74 + })
  75 + })
  76 + }
  77 + // MARK: - 刷新数据接口
  78 + func refreshLivesAction(tag:Int,completionHandler:@escaping (Bool) -> ()){
  79 + let parameters:Dictionary<String,AnyObject>=["type":0 as AnyObject,"pageIndex":tag as AnyObject,"pageSize":1 as AnyObject]
  80 + AppDelegate.instance().httpServer.getHotRescourse(parameters: parameters) { (str, error) in
  81 + var success:Bool=true
  82 + if error==nil {
  83 + if JSON.fromString(jsonString: str)!["status"].intValue == 1{
  84 + httpJsonResule(jsonString: str, error: error, successHandler: { (json) in
  85 + if JSON.fromString(jsonString: str)!["data"].arrayValue.count>0{
  86 + self.currentPage+=1
  87 + }
  88 + for item in JSON.fromString(jsonString: str)!["data"].arrayValue {
  89 + self.resourceData.append(MicroCourseModel(j: item))
  90 + }
  91 + success=true
  92 + }, failHandler: { (error) in
  93 + success=false
  94 + appRootViewController().view.makeToast("获取资源失败:\(error.localizedDescription)")
  95 + })
  96 + }else{
  97 + success=false
  98 + appRootViewController().view.makeToast("获取资源失败:\(JSON.fromString(jsonString: str)!["message"].stringValue)")
  99 + }
  100 + }else{
  101 + success=false
  102 + appRootViewController().view.makeToast("获取资源失败:\(error!.description)")
  103 + }
  104 + completionHandler(success)
  105 + }
  106 + }
  107 + func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
  108 + if tableView==searchTableView{
  109 + return searchAry.count
  110 + }else{
  111 + return resourceData.count
  112 + }
  113 + }
  114 + func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
  115 + if tableView==searchTableView {
  116 + let cell=tableView.dequeueReusableCell(withIdentifier: "cell")
  117 + cell?.textLabel?.text=searchAry[indexPath.row]
  118 + return cell!
  119 + }else{
  120 + let cell=tableView.dequeueReusableCell(withIdentifier: "identifier") as! MicroCourseViewControllerTableViewCell
  121 + cell.superVC=self
  122 + cell.setUpWith(item: resourceData[indexPath.row])
  123 + return cell
  124 + }
  125 + }
  126 + func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
  127 + if tableView==searchTableView {
  128 + let vc = UIStoryboard(name: "HomePage", bundle: nil).instantiateViewController(withIdentifier: "RankingTableViewController") as! RankingTableViewController
  129 + self.navigationController?.pushViewController(vc, animated: true)
  130 + }else{
  131 +// let vc = UIStoryboard(name: "Resource", bundle: nil).instantiateViewController(withIdentifier: "LiveInforViewControllerVC") as! LiveInforViewController
  132 +// vc.item=resourceData[indexPath.row]
  133 +// self.navigationController?.pushViewController(vc, animated: true)
  134 + }
  135 + }
  136 + //取消键盘输入状态
  137 + @IBAction func cancleSearchActivit(_ sender: UITapGestureRecognizer) {
  138 + searchController.isActive=false
  139 + }
  140 + func willPresentSearchController(_ searchController: UISearchController) {
  141 + grayView.isHidden=false
  142 + }
  143 + func willDismissSearchController(_ searchController: UISearchController) {
  144 + searchTableHeight.constant=44
  145 + grayView.isHidden=true
  146 + }
  147 + //谓词搜索过滤
  148 + func updateSearchResults(for searchController: UISearchController) {
  149 + let searchString=searchController.searchBar.text
  150 + let predicate=NSPredicate(format: "SELF CONTAINS[c] %@", searchString!)
  151 + searchAry=(dataSetAry as NSArray).filtered(using: predicate) as! [String]
  152 + if CGFloat((searchAry.count+1)*44)>(getScreenHeight()-64){
  153 + searchTableHeight.constant=getScreenHeight()-64
  154 + }else{
  155 + searchTableHeight.constant=CGFloat((searchAry.count+1)*44)
  156 + }
  157 + searchTableView.reloadData()
22 158 }
23 159  
  160 +}
24 161  
25   - /*
26   - // MARK: - Navigation
27   -
28   - // In a storyboard-based application, you will often want to do a little preparation before navigation
29   - override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
30   - // Get the new view controller using segue.destinationViewController.
31   - // Pass the selected object to the new view controller.
  162 +class MicroCourseViewControllerTableViewCell:UITableViewCell{
  163 + @IBOutlet var iconImageView: UIImageView!
  164 + @IBOutlet var titleLabel: UILabel!
  165 + @IBOutlet var updateTeacherLabel: UILabel!
  166 + @IBOutlet var timeLabel: UILabel!
  167 + @IBOutlet var downLoadCountLabel: UILabel!
  168 + var item:MicroCourseModel!
  169 + var superVC:MicroCourseViewController!
  170 + func setUpWith(item: MicroCourseModel){
  171 + self.item=item
  172 + iconImageView.sd_setImage(with: URL(string: item.f_Img), placeholderImage: UIImage(named: "icon_course_placeholder"))
  173 + titleLabel.text=item.f_Title
  174 + updateTeacherLabel.text="上传者:\(item.f_CreatorName) 老师"
  175 + timeLabel.text=item.f_CreatorTime
  176 + downLoadCountLabel.text="\(item.f_DownloadSum)"
  177 + }
  178 + @IBAction func pushDetailVC(_ sender: UIButton) {
  179 + let vc = UIStoryboard(name: "Resource", bundle: nil).instantiateViewController(withIdentifier: "LiveInforViewControllerVC") as! LiveInforViewController
  180 + vc.item=item
  181 + self.superVC.navigationController!.pushViewController(vc, animated: true)
32 182 }
33   - */
34   -
35 183 }
... ...
YouerLiveVideo/YouerLiveVideo/controllers/Resource/FilterViewController.swift 0 → 100644
... ... @@ -0,0 +1,35 @@
  1 +//
  2 +// FilterViewController.swift
  3 +// YouerLiveVideo
  4 +//
  5 +// Created by 葛建军 on 17/5/22.
  6 +// Copyright © 2017年 左丞. All rights reserved.
  7 +//
  8 +
  9 +import UIKit
  10 +
  11 +class FilterViewController: UIViewController {
  12 +
  13 + override func viewDidLoad() {
  14 + super.viewDidLoad()
  15 +
  16 + // Do any additional setup after loading the view.
  17 + }
  18 +
  19 + override func didReceiveMemoryWarning() {
  20 + super.didReceiveMemoryWarning()
  21 + // Dispose of any resources that can be recreated.
  22 + }
  23 +
  24 +
  25 + /*
  26 + // MARK: - Navigation
  27 +
  28 + // In a storyboard-based application, you will often want to do a little preparation before navigation
  29 + override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
  30 + // Get the new view controller using segue.destinationViewController.
  31 + // Pass the selected object to the new view controller.
  32 + }
  33 + */
  34 +
  35 +}
... ...
YouerLiveVideo/YouerLiveVideo/controllers/Resource/LiveInforViewController.swift
... ... @@ -16,27 +16,26 @@ class LiveInforViewController: UIViewController {
16 16 @IBOutlet weak var updataPersonPhoto: UIImageView!
17 17 @IBOutlet weak var updataPersonName: UILabel!
18 18 @IBOutlet weak var updataTime: UILabel!
19   -
20   - var tvStation:TVStationSubject!
  19 + var item:MicroCourseModel!
21 20 override func viewDidLoad() {
22 21 super.viewDidLoad()
23   - AppDelegate.instance().httpServer.getResourceModel(parameters: ["f_id":"2be92331-ea5a-41c9-9025-c954d7df904c" as AnyObject]) { (str, error) in
  22 + updataPersonPhoto.layer.cornerRadius = updataPersonPhoto.frame.size.height/2
  23 + updataPersonPhoto.layer.masksToBounds = true
  24 + AppDelegate.instance().httpServer.getResourceModel(parameters: ["f_id":item.f_Id as AnyObject]) { (str, error) in
24 25 httpJsonResule(jsonString: str, error: error, successHandler: { (json) in
25   - self.tvStation = TVStationSubject(json: json.contentData())
26   - self.setAllInfor()
  26 + self.setAllInfor(item: TVStationSubject(json: json.contentData()))
27 27 }, failHandler: { (error) in
28 28  
29 29 })
30 30 }
  31 +
31 32 // Do any additional setup after loading the view.
32 33 }
33 34  
34   - func setAllInfor(){
35   - updataTime.text = setDateToString(date: dateFromISO8601(dateString: tvStation.f_CreatorTime))
36   - updataPersonName.text = "上传者: \(tvStation.f_CreatorName!)"
37   - updataPersonPhoto.layer.cornerRadius = updataPersonPhoto.frame.size.height/2
38   - updataPersonPhoto.layer.masksToBounds = true
39   - updataPersonPhoto.sd_setImage(with: URL(string: tvStation.f_Img), placeholderImage: #imageLiteral(resourceName: "defphoto.png"))
  35 + func setAllInfor(item:TVStationSubject){
  36 + updataTime.text = setDateToString(date: dateFromISO8601(dateString: item.f_CreatorTime))
  37 + updataPersonName.text = "上传者: \(item.f_CreatorName!)"
  38 + updataPersonPhoto.sd_setImage(with: URL(string: item.f_Img), placeholderImage: #imageLiteral(resourceName: "defphoto.png"))
40 39 }
41 40  
42 41 override func didReceiveMemoryWarning() {
... ...
YouerLiveVideo/YouerLiveVideo/controllers/Resource/Resource.storyboard
1   -<?xml version="1.0" encoding="UTF-8"?>
2   -<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="11762" systemVersion="16A323" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
  1 +<?xml version="1.0" encoding="UTF-8" standalone="no"?>
  2 +<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="11762" systemVersion="15G1217" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
3 3 <device id="retina4_7" orientation="portrait">
4 4 <adaptation id="fullscreen"/>
5 5 </device>
... ... @@ -9,6 +9,24 @@
9 9 <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
10 10 </dependencies>
11 11 <scenes>
  12 + <!--Filter View Controller-->
  13 + <scene sceneID="Rmv-Eo-NBi">
  14 + <objects>
  15 + <viewController id="J51-bf-ysq" customClass="FilterViewController" customModule="YouerLiveVideo" customModuleProvider="target" sceneMemberID="viewController">
  16 + <layoutGuides>
  17 + <viewControllerLayoutGuide type="top" id="8Fm-xC-jSr"/>
  18 + <viewControllerLayoutGuide type="bottom" id="bXh-Wr-qy6"/>
  19 + </layoutGuides>
  20 + <view key="view" contentMode="scaleToFill" id="ao2-Oa-iAS">
  21 + <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
  22 + <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
  23 + <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
  24 + </view>
  25 + </viewController>
  26 + <placeholder placeholderIdentifier="IBFirstResponder" id="ocM-s7-Wga" userLabel="First Responder" sceneMemberID="firstResponder"/>
  27 + </objects>
  28 + <point key="canvasLocation" x="-737" y="266"/>
  29 + </scene>
12 30 <!--Live Infor View Controller-->
13 31 <scene sceneID="QrF-a4-VNS">
14 32 <objects>
... ...
YouerLiveVideo/YouerLiveVideo/controllers/Resource/ResourceViewController.swift
... ... @@ -104,6 +104,12 @@ class ResourceViewController: UIViewController,UITableViewDelegate,UITableViewDa
104 104 completionHandler(success)
105 105 }
106 106 }
  107 + // MARK: - 跳转到筛选
  108 + @IBAction func jumpFilterVCAction(_ sender: UIButton) {
  109 + let vc = UIStoryboard(name: "Resource", bundle: nil).instantiateViewController(withIdentifier: "FilterViewController") as! FilterViewController
  110 + self.navigationController?.pushViewController(vc, animated: true)
  111 + }
  112 +
107 113 func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
108 114 if tableView==searchTableView{
109 115 return searchAry.count
... ... @@ -126,6 +132,8 @@ class ResourceViewController: UIViewController,UITableViewDelegate,UITableViewDa
126 132 if tableView==searchTableView {
127 133 let vc = UIStoryboard(name: "HomePage", bundle: nil).instantiateViewController(withIdentifier: "RankingTableViewController") as! RankingTableViewController
128 134 self.navigationController?.pushViewController(vc, animated: true)
  135 + }else{
  136 +
129 137 }
130 138 }
131 139 //取消键盘输入状态
... ...