HF_Q 5 年之前
父節點
當前提交
f7934c2734

+ 28 - 0
smartRhino/Project/VCModel/Home/VC/BookStore/View/BookCardPayAlert.h

@@ -0,0 +1,28 @@
+//
+//  PayAlert.h
+//  smartRhino
+//
+//  Created by niuzhen on 2020/4/30.
+//  Copyright © 2020 tederen. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+#import "BSAlertView.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface BookCardPayAlert : BSAlertView
+@property (weak, nonatomic) IBOutlet UITableView *tableView;
+@property (weak, nonatomic) IBOutlet UIView *AlertView;
+@property (weak, nonatomic) IBOutlet UIButton *disBtn;
+@property (weak, nonatomic) IBOutlet UIButton *payBtn;
+@property (weak, nonatomic) IBOutlet UIButton *alertCloseBtn;
+@property (weak, nonatomic) IBOutlet UIButton *cardBtn;
+@property (weak, nonatomic) IBOutlet UILabel *moneyL;
+
++ (instancetype)share;
+- (void)show;
+- (void)dismiss;
+@end
+
+NS_ASSUME_NONNULL_END

+ 64 - 0
smartRhino/Project/VCModel/Home/VC/BookStore/View/BookCardPayAlert.m

@@ -0,0 +1,64 @@
+//
+//  PayAlert.m
+//  smartRhino
+//
+//  Created by niuzhen on 2020/4/30.
+//  Copyright © 2020 tederen. All rights reserved.
+//
+
+#import "BookCardPayAlert.h"
+#import "BookCardPayAlertCell.h"
+
+static UINib *ViewNib = nil;
+@interface BookCardPayAlert()<UITableViewDelegate,UITableViewDataSource>
+@end
+@implementation BookCardPayAlert
++ (instancetype)share
+{
+    if (ViewNib == nil) {
+        ViewNib = [UINib nibWithNibName:@"BookCardPayAlert" bundle:nil];
+    }
+    BookCardPayAlert *alert = [[ViewNib instantiateWithOwner:nil options:nil] lastObject];
+    [alert setFrame:CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT)];
+    alert.bgColor = [UIColor clearColor];
+    alert.tableView.delegate = alert;
+    alert.tableView.dataSource = alert;
+    [alert.disBtn addTarget:alert action:@selector(dismiss) forControlEvents:UIControlEventTouchUpInside];
+    [alert.alertCloseBtn addTarget:alert action:@selector(dismiss) forControlEvents:UIControlEventTouchUpInside];
+    [alert.tableView beginUpdates];
+    [alert.tableView reloadData];
+    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
+        [alert.tableView endUpdates];
+    });
+    return alert;
+}
+
+- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
+{
+    return 1;
+}
+- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
+{
+    return 160.f;
+}
+- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
+{
+    BookCardPayAlertCell * cell = [BookCardPayAlertCell configCell0:tableView indexPath:indexPath];
+    BookContentModel * model = [[BookContentModel alloc] init];
+    model.title = @"学生必背的历朝历代名篇 名句400句";
+    model.name = @"观影有效期:2020-04-25  14:20";
+    model.subtitle = @"可在泰德信源电脑/手机多终端观看";
+    [cell setDataWithModel:model];
+    return cell;
+}
+
+- (void)show
+{
+    [super show];
+}
+- (void)dismiss
+{
+    [self dismissWithAnimation:kAlertAnimationBottom];
+}
+
+@end

+ 176 - 0
smartRhino/Project/VCModel/Home/VC/BookStore/View/BookCardPayAlert.xib

@@ -0,0 +1,176 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="15705" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina6_1" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15706"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <view contentMode="scaleToFill" id="iN0-l3-epB" customClass="BookCardPayAlert">
+            <rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
+            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+            <subviews>
+                <button opaque="NO" alpha="0.5" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Hwm-BA-YR7">
+                    <rect key="frame" x="0.0" y="44" width="414" height="852"/>
+                    <color key="backgroundColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                </button>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="HQi-LA-dF0">
+                    <rect key="frame" x="16" y="273.5" width="382" height="349"/>
+                    <subviews>
+                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="mbV-BO-wly">
+                            <rect key="frame" x="0.0" y="0.0" width="382" height="294"/>
+                            <subviews>
+                                <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" scrollEnabled="NO" style="plain" separatorStyle="none" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="28" sectionFooterHeight="28" translatesAutoresizingMaskIntoConstraints="NO" id="MX1-SE-dMg">
+                                    <rect key="frame" x="20" y="44" width="342" height="160"/>
+                                    <color key="backgroundColor" red="0.94901960784313721" green="0.97647058823529409" blue="0.99607843137254903" alpha="1" colorSpace="calibratedRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="160" id="w29-07-lGJ"/>
+                                    </constraints>
+                                </tableView>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="lfu-Nd-poI">
+                                    <rect key="frame" x="20" y="209" width="342" height="0.5"/>
+                                    <color key="backgroundColor" red="0.78823529410000004" green="0.90588235289999997" blue="0.98823529409999999" alpha="1" colorSpace="calibratedRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="0.5" id="FlG-h3-5hf"/>
+                                    </constraints>
+                                </view>
+                                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Rew-iD-yXG">
+                                    <rect key="frame" x="330" y="0.0" width="44" height="44"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="44" id="Kz1-J3-6Pu"/>
+                                        <constraint firstAttribute="width" constant="44" id="LEe-Vp-DEm"/>
+                                    </constraints>
+                                    <state key="normal" image="Book_close_gray"/>
+                                </button>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="59.8元" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="tip-zU-C6v">
+                                    <rect key="frame" x="20" y="230.5" width="69" height="27"/>
+                                    <fontDescription key="fontDescription" type="system" pointSize="22"/>
+                                    <nil key="textColor"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="无限卡 28元/月·全场视频免费看" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gU7-ee-C1B">
+                                    <rect key="frame" x="154" y="231" width="208" height="26"/>
+                                    <color key="backgroundColor" red="0.22352941176470587" green="0.47450980392156861" blue="0.82745098039215681" alpha="1" colorSpace="calibratedRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="26" id="0I6-Di-0Fm"/>
+                                        <constraint firstAttribute="width" constant="208" id="iP6-e3-z3w"/>
+                                    </constraints>
+                                    <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                    <color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                    <nil key="highlightedColor"/>
+                                    <userDefinedRuntimeAttributes>
+                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
+                                            <integer key="value" value="13"/>
+                                        </userDefinedRuntimeAttribute>
+                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                    </userDefinedRuntimeAttributes>
+                                </label>
+                            </subviews>
+                            <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <constraints>
+                                <constraint firstItem="Rew-iD-yXG" firstAttribute="top" secondItem="mbV-BO-wly" secondAttribute="top" id="2Xm-mg-cDz"/>
+                                <constraint firstItem="MX1-SE-dMg" firstAttribute="top" secondItem="Rew-iD-yXG" secondAttribute="bottom" id="Aw8-aA-7ti"/>
+                                <constraint firstAttribute="trailing" secondItem="lfu-Nd-poI" secondAttribute="trailing" constant="20" id="COE-Ag-8gW"/>
+                                <constraint firstItem="tip-zU-C6v" firstAttribute="top" secondItem="lfu-Nd-poI" secondAttribute="bottom" constant="21" id="ERw-5f-dae"/>
+                                <constraint firstItem="MX1-SE-dMg" firstAttribute="leading" secondItem="mbV-BO-wly" secondAttribute="leading" constant="20" id="LiX-xb-Yng"/>
+                                <constraint firstItem="gU7-ee-C1B" firstAttribute="centerY" secondItem="tip-zU-C6v" secondAttribute="centerY" id="MDE-bq-huQ"/>
+                                <constraint firstAttribute="trailing" secondItem="Rew-iD-yXG" secondAttribute="trailing" constant="8" id="Q1m-uY-s2B"/>
+                                <constraint firstAttribute="trailing" secondItem="gU7-ee-C1B" secondAttribute="trailing" constant="20" id="gkZ-eR-9rn"/>
+                                <constraint firstAttribute="height" constant="294" id="hCA-bg-sNB"/>
+                                <constraint firstAttribute="trailing" secondItem="MX1-SE-dMg" secondAttribute="trailing" constant="20" id="hsS-Wf-9ee"/>
+                                <constraint firstItem="lfu-Nd-poI" firstAttribute="leading" secondItem="mbV-BO-wly" secondAttribute="leading" constant="20" id="qqB-wx-1iP"/>
+                                <constraint firstItem="lfu-Nd-poI" firstAttribute="top" secondItem="MX1-SE-dMg" secondAttribute="bottom" constant="5" id="wnx-Cf-gr3"/>
+                                <constraint firstItem="tip-zU-C6v" firstAttribute="leading" secondItem="mbV-BO-wly" secondAttribute="leading" constant="20" id="zDn-zt-imt"/>
+                            </constraints>
+                            <userDefinedRuntimeAttributes>
+                                <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
+                                    <integer key="value" value="15"/>
+                                </userDefinedRuntimeAttribute>
+                                <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                            </userDefinedRuntimeAttributes>
+                        </view>
+                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ssF-EW-b0d">
+                            <rect key="frame" x="191" y="294" width="0.5" height="55"/>
+                            <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <constraints>
+                                <constraint firstAttribute="width" constant="0.5" id="Zgv-wM-bfj"/>
+                                <constraint firstAttribute="height" constant="55" id="w6J-qo-Hmh"/>
+                            </constraints>
+                        </view>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="UCg-vr-ynP">
+                            <rect key="frame" x="191.5" y="294" width="190.5" height="55"/>
+                            <color key="backgroundColor" red="0.20000000000000001" green="0.52941176469999995" blue="0.93725490199999995" alpha="1" colorSpace="calibratedRGB"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="55" id="5l5-jU-A69"/>
+                            </constraints>
+                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                            <state key="normal" title="28元开通无限卡">
+                                <color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            </state>
+                        </button>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="jTH-um-Pl3">
+                            <rect key="frame" x="0.0" y="294" width="191" height="55"/>
+                            <color key="backgroundColor" red="0.20000000000000001" green="0.52941176470588236" blue="0.93725490196078431" alpha="1" colorSpace="calibratedRGB"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="55" id="JwZ-dR-nuJ"/>
+                            </constraints>
+                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                            <state key="normal" title="立即支付">
+                                <color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            </state>
+                        </button>
+                    </subviews>
+                    <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+                    <constraints>
+                        <constraint firstItem="ssF-EW-b0d" firstAttribute="centerX" secondItem="HQi-LA-dF0" secondAttribute="centerX" id="06c-tG-flO"/>
+                        <constraint firstItem="UCg-vr-ynP" firstAttribute="top" secondItem="mbV-BO-wly" secondAttribute="bottom" id="7av-zu-gMx"/>
+                        <constraint firstItem="mbV-BO-wly" firstAttribute="top" secondItem="HQi-LA-dF0" secondAttribute="top" id="C43-gH-aJi"/>
+                        <constraint firstItem="mbV-BO-wly" firstAttribute="leading" secondItem="HQi-LA-dF0" secondAttribute="leading" id="EvF-wv-25y"/>
+                        <constraint firstItem="jTH-um-Pl3" firstAttribute="leading" secondItem="HQi-LA-dF0" secondAttribute="leading" id="IS4-OZ-iyX"/>
+                        <constraint firstAttribute="height" constant="349" id="LDK-PI-6LW"/>
+                        <constraint firstAttribute="trailing" secondItem="UCg-vr-ynP" secondAttribute="trailing" id="NE9-6V-OLx"/>
+                        <constraint firstItem="ssF-EW-b0d" firstAttribute="leading" secondItem="jTH-um-Pl3" secondAttribute="trailing" id="l0A-g6-dZZ"/>
+                        <constraint firstAttribute="trailing" secondItem="mbV-BO-wly" secondAttribute="trailing" id="mya-2b-aVl"/>
+                        <constraint firstItem="UCg-vr-ynP" firstAttribute="leading" secondItem="ssF-EW-b0d" secondAttribute="trailing" id="yoj-Fe-exs"/>
+                        <constraint firstItem="jTH-um-Pl3" firstAttribute="top" secondItem="mbV-BO-wly" secondAttribute="bottom" id="zI8-WH-aMd"/>
+                        <constraint firstItem="ssF-EW-b0d" firstAttribute="top" secondItem="mbV-BO-wly" secondAttribute="bottom" id="zYj-Hj-D6k"/>
+                    </constraints>
+                    <userDefinedRuntimeAttributes>
+                        <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
+                            <integer key="value" value="15"/>
+                        </userDefinedRuntimeAttribute>
+                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                    </userDefinedRuntimeAttributes>
+                </view>
+            </subviews>
+            <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+            <constraints>
+                <constraint firstItem="Hwm-BA-YR7" firstAttribute="top" secondItem="vUN-kp-3ea" secondAttribute="top" id="5sV-d7-Ycq"/>
+                <constraint firstItem="vUN-kp-3ea" firstAttribute="trailing" secondItem="HQi-LA-dF0" secondAttribute="trailing" constant="16" id="AFk-YQ-hTk"/>
+                <constraint firstAttribute="bottom" secondItem="Hwm-BA-YR7" secondAttribute="bottom" id="Kn0-Mu-jRT"/>
+                <constraint firstItem="vUN-kp-3ea" firstAttribute="trailing" secondItem="Hwm-BA-YR7" secondAttribute="trailing" id="QJV-AT-5Sh"/>
+                <constraint firstItem="HQi-LA-dF0" firstAttribute="leading" secondItem="vUN-kp-3ea" secondAttribute="leading" constant="16" id="XMq-vR-T3b"/>
+                <constraint firstItem="HQi-LA-dF0" firstAttribute="centerY" secondItem="iN0-l3-epB" secondAttribute="centerY" id="wHg-Wh-NM9"/>
+                <constraint firstItem="Hwm-BA-YR7" firstAttribute="leading" secondItem="vUN-kp-3ea" secondAttribute="leading" id="xEH-BX-Ebr"/>
+            </constraints>
+            <viewLayoutGuide key="safeArea" id="vUN-kp-3ea"/>
+            <connections>
+                <outlet property="AlertView" destination="HQi-LA-dF0" id="dRy-4X-KRc"/>
+                <outlet property="alertCloseBtn" destination="Rew-iD-yXG" id="NGs-V1-hJ6"/>
+                <outlet property="cardBtn" destination="UCg-vr-ynP" id="4cD-WJ-2MS"/>
+                <outlet property="disBtn" destination="Hwm-BA-YR7" id="3cR-aX-KrC"/>
+                <outlet property="moneyL" destination="tip-zU-C6v" id="ICu-cZ-AOF"/>
+                <outlet property="payBtn" destination="jTH-um-Pl3" id="6tp-fY-qhU"/>
+                <outlet property="tableView" destination="MX1-SE-dMg" id="Xia-l5-P2p"/>
+            </connections>
+            <point key="canvasLocation" x="137.68115942028987" y="152.67857142857142"/>
+        </view>
+    </objects>
+    <resources>
+        <image name="Book_close_gray" width="14.5" height="14.5"/>
+    </resources>
+</document>

+ 28 - 0
smartRhino/Project/VCModel/Home/VC/BookStore/View/BookCardPayAlertCell.h

@@ -0,0 +1,28 @@
+//
+//  BookContentCell.h
+//  smartRhino
+//
+//  Created by niuzhen on 2020/5/14.
+//  Copyright © 2020 tederen. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+#import "BookContentModel.h"
+NS_ASSUME_NONNULL_BEGIN
+
+@interface BookCardPayAlertCell : UITableViewCell
+@property (weak, nonatomic) IBOutlet UIImageView *imagV;
+@property (weak, nonatomic) IBOutlet UILabel *titleL;
+@property (weak, nonatomic) IBOutlet UILabel *nameL;
+@property (weak, nonatomic) IBOutlet UILabel *subTitleL;
+@property (weak, nonatomic) IBOutlet UIView *conView;
+@property (weak, nonatomic) IBOutlet UIImageView *playImgV;
+@property (weak, nonatomic) IBOutlet NSLayoutConstraint *constant;
+
++ (BookCardPayAlertCell *)configCell0:(UITableView *)tableView indexPath:(NSIndexPath *)indexPath;
++ (BookCardPayAlertCell *)configCell1:(UITableView *)tableView indexPath:(NSIndexPath *)indexPath;
++ (BookCardPayAlertCell *)configCell2:(UITableView *)tableView indexPath:(NSIndexPath *)indexPath;
+- (void)setDataWithModel:(BookContentModel *)model;
+@end
+
+NS_ASSUME_NONNULL_END

+ 56 - 0
smartRhino/Project/VCModel/Home/VC/BookStore/View/BookCardPayAlertCell.m

@@ -0,0 +1,56 @@
+//
+//  BookContentCell.m
+//  smartRhino
+//
+//  Created by niuzhen on 2020/5/14.
+//  Copyright © 2020 tederen. All rights reserved.
+//
+
+#import "BookCardPayAlertCell.h"
+
+@implementation BookCardPayAlertCell
+
+- (void)awakeFromNib {
+    [super awakeFromNib];
+    // Initialization code
+}
++ (BookCardPayAlertCell *)configCell0:(UITableView *)tableView indexPath:(NSIndexPath *)indexPath{
+    static NSString *cellIdentifer = @"BookCardPayAlertCell0";
+    BookCardPayAlertCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifer];
+    if (cell == nil) {
+        cell = [[[NSBundle mainBundle] loadNibNamed:@"BookCardPayAlertCell" owner:nil options:nil] objectAtIndex:0];
+    }
+    return cell;
+}
++ (BookCardPayAlertCell *)configCell1:(UITableView *)tableView indexPath:(NSIndexPath *)indexPath{
+    static NSString *cellIdentifer = @"BookCardPayAlertCell1";
+    BookCardPayAlertCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifer];
+    if (cell == nil) {
+        cell = [[[NSBundle mainBundle] loadNibNamed:@"BookCardPayAlertCell" owner:nil options:nil] objectAtIndex:1];
+    }
+    return cell;
+}
++ (BookCardPayAlertCell *)configCell2:(UITableView *)tableView indexPath:(NSIndexPath *)indexPath{
+    static NSString *cellIdentifer = @"BookCardPayAlertCell2";
+    BookCardPayAlertCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifer];
+    if (cell == nil) {
+        cell = [[[NSBundle mainBundle] loadNibNamed:@"BookCardPayAlertCell" owner:nil options:nil] objectAtIndex:2];
+    }
+    return cell;
+}
+- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
+    [super setSelected:selected animated:animated];
+
+    // Configure the view for the selected state
+}
+- (void)setDataWithModel:(BookContentModel *)model
+{
+     self.titleL.text = model.title;
+     self.nameL.text = model.name;
+     self.subTitleL.text = model.subtitle;
+     [self.nameL layoutIfNeeded];
+     [self.subTitleL layoutIfNeeded];
+     [self.conView layoutIfNeeded];
+     self.constant.constant = CGRectGetMaxY(self.subTitleL.frame);
+}
+@end

+ 259 - 0
smartRhino/Project/VCModel/Home/VC/BookStore/View/BookCardPayAlertCell.xib

@@ -0,0 +1,259 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="15705" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina6_1" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15706"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <tableViewCell contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" reuseIdentifier="BookCardPayAlertCell0" id="KGk-i7-Jjw" customClass="BookCardPayAlertCell">
+            <rect key="frame" x="0.0" y="0.0" width="320" height="160"/>
+            <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+            <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM">
+                <rect key="frame" x="0.0" y="0.0" width="320" height="160"/>
+                <autoresizingMask key="autoresizingMask"/>
+                <subviews>
+                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="img_placeHolder" translatesAutoresizingMaskIntoConstraints="NO" id="G92-eo-trM">
+                        <rect key="frame" x="0.0" y="15" width="98" height="130"/>
+                        <constraints>
+                            <constraint firstAttribute="height" constant="130" id="04R-rQ-QYU"/>
+                            <constraint firstAttribute="width" constant="98" id="Zqm-Qu-7eF"/>
+                        </constraints>
+                    </imageView>
+                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="BIg-r8-yi6">
+                        <rect key="frame" x="112" y="15" width="208" height="130"/>
+                        <subviews>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="252" verticalCompressionResistancePriority="751" text="小学教材全解(四年级语文下)" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="JF4-RS-67K">
+                                <rect key="frame" x="0.0" y="0.0" width="208" height="41"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="252" text="王德培等" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="bEA-Xb-p40">
+                                <rect key="frame" x="0.0" y="51" width="208" height="15"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                <color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="0.84705882349999995" colorSpace="calibratedRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" verticalCompressionResistancePriority="751" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="cjy-kD-lyx">
+                                <rect key="frame" x="0.0" y="76" width="208" height="14.5"/>
+                                <string key="text">我们看重的是教给学生多少知识。在教育者眼中,学生就是一个装知
+                            </string>
+                                <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                <color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="0.84705882349999995" colorSpace="calibratedRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                        </subviews>
+                        <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                        <constraints>
+                            <constraint firstItem="JF4-RS-67K" firstAttribute="leading" secondItem="BIg-r8-yi6" secondAttribute="leading" id="6A1-Z4-rxj"/>
+                            <constraint firstAttribute="trailing" secondItem="JF4-RS-67K" secondAttribute="trailing" id="9DT-SA-IaM"/>
+                            <constraint firstItem="cjy-kD-lyx" firstAttribute="top" secondItem="bEA-Xb-p40" secondAttribute="bottom" constant="10" id="J9D-gJ-fYO"/>
+                            <constraint firstItem="bEA-Xb-p40" firstAttribute="top" secondItem="JF4-RS-67K" secondAttribute="bottom" constant="10" id="KXR-4e-ced"/>
+                            <constraint firstItem="JF4-RS-67K" firstAttribute="top" secondItem="BIg-r8-yi6" secondAttribute="top" id="NQY-Xi-EtT"/>
+                            <constraint firstAttribute="trailing" secondItem="bEA-Xb-p40" secondAttribute="trailing" id="OfY-mM-8YV"/>
+                            <constraint firstAttribute="height" constant="130" id="clu-rT-Gz7"/>
+                            <constraint firstAttribute="trailing" secondItem="cjy-kD-lyx" secondAttribute="trailing" id="dC7-NP-n89"/>
+                            <constraint firstItem="cjy-kD-lyx" firstAttribute="leading" secondItem="BIg-r8-yi6" secondAttribute="leading" id="msq-Tf-1pH"/>
+                            <constraint firstItem="bEA-Xb-p40" firstAttribute="leading" secondItem="BIg-r8-yi6" secondAttribute="leading" id="qfH-VT-SuL"/>
+                        </constraints>
+                    </view>
+                </subviews>
+                <constraints>
+                    <constraint firstItem="G92-eo-trM" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="15" id="7l6-5t-cdf"/>
+                    <constraint firstAttribute="trailing" secondItem="BIg-r8-yi6" secondAttribute="trailing" id="93c-6R-f8c"/>
+                    <constraint firstItem="G92-eo-trM" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" id="EJf-w0-N6l"/>
+                    <constraint firstItem="BIg-r8-yi6" firstAttribute="centerY" secondItem="G92-eo-trM" secondAttribute="centerY" id="Gh0-rf-dw3"/>
+                    <constraint firstItem="BIg-r8-yi6" firstAttribute="leading" secondItem="G92-eo-trM" secondAttribute="trailing" constant="14" id="eBn-V8-lUn"/>
+                </constraints>
+            </tableViewCellContentView>
+            <viewLayoutGuide key="safeArea" id="aW0-zy-SZf"/>
+            <connections>
+                <outlet property="conView" destination="BIg-r8-yi6" id="FN9-Kh-Lpi"/>
+                <outlet property="constant" destination="clu-rT-Gz7" id="mCR-WK-VjC"/>
+                <outlet property="imagV" destination="G92-eo-trM" id="2cm-Yz-ThT"/>
+                <outlet property="nameL" destination="bEA-Xb-p40" id="RkI-8p-mc6"/>
+                <outlet property="subTitleL" destination="cjy-kD-lyx" id="c1o-lI-Grv"/>
+                <outlet property="titleL" destination="JF4-RS-67K" id="1in-QJ-5p1"/>
+            </connections>
+            <point key="canvasLocation" x="138" y="-17"/>
+        </tableViewCell>
+        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="BookCardPayAlertCell1" id="kHg-As-U1h" customClass="BookContentCell">
+            <rect key="frame" x="0.0" y="0.0" width="320" height="124"/>
+            <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+            <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="kHg-As-U1h" id="wtM-Oa-dfY">
+                <rect key="frame" x="0.0" y="0.0" width="320" height="124"/>
+                <autoresizingMask key="autoresizingMask"/>
+                <subviews>
+                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="img_placeHolder" translatesAutoresizingMaskIntoConstraints="NO" id="W3c-rb-Oax">
+                        <rect key="frame" x="15" y="15" width="130" height="80"/>
+                        <constraints>
+                            <constraint firstAttribute="width" constant="130" id="0U3-It-sbe"/>
+                            <constraint firstAttribute="height" constant="80" id="Cqc-0d-CQx"/>
+                        </constraints>
+                    </imageView>
+                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Book_Videoplay_btn" translatesAutoresizingMaskIntoConstraints="NO" id="kQ1-P7-i6T">
+                        <rect key="frame" x="55.5" y="27" width="49" height="56"/>
+                    </imageView>
+                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="pmu-z6-Mpy">
+                        <rect key="frame" x="159" y="15" width="146" height="80"/>
+                        <subviews>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="252" verticalCompressionResistancePriority="751" text="小学教材全解(四年级语文下)" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fiq-YO-rNF">
+                                <rect key="frame" x="0.0" y="0.0" width="146" height="21"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="252" text="王德培等" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="5FH-5u-k6M">
+                                <rect key="frame" x="0.0" y="31" width="146" height="15"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                <color key="textColor" red="0.36470588240000001" green="0.3921568627" blue="0.43137254899999999" alpha="0.84705882349999995" colorSpace="calibratedRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" verticalCompressionResistancePriority="751" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="i4b-7S-ted">
+                                <rect key="frame" x="0.0" y="56" width="146" height="14.5"/>
+                                <string key="text">时候教育的成…
+                            </string>
+                                <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                <color key="textColor" red="0.52156862749999999" green="0.54901960780000003" blue="0.58823529409999997" alpha="0.84705882349999995" colorSpace="calibratedRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                        </subviews>
+                        <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                        <constraints>
+                            <constraint firstItem="5FH-5u-k6M" firstAttribute="top" secondItem="fiq-YO-rNF" secondAttribute="bottom" constant="10" id="9qi-iI-2ht"/>
+                            <constraint firstItem="i4b-7S-ted" firstAttribute="leading" secondItem="pmu-z6-Mpy" secondAttribute="leading" id="IJG-8p-EGC"/>
+                            <constraint firstAttribute="trailing" secondItem="i4b-7S-ted" secondAttribute="trailing" id="MIL-FK-RLa"/>
+                            <constraint firstAttribute="trailing" secondItem="5FH-5u-k6M" secondAttribute="trailing" id="TpX-NP-55J"/>
+                            <constraint firstAttribute="height" constant="80" id="Zfs-eR-rOB"/>
+                            <constraint firstItem="fiq-YO-rNF" firstAttribute="leading" secondItem="pmu-z6-Mpy" secondAttribute="leading" id="ahb-lJ-C97"/>
+                            <constraint firstAttribute="trailing" secondItem="fiq-YO-rNF" secondAttribute="trailing" id="gyb-VV-hHy"/>
+                            <constraint firstItem="i4b-7S-ted" firstAttribute="top" secondItem="5FH-5u-k6M" secondAttribute="bottom" constant="10" id="n1h-Qa-kBh"/>
+                            <constraint firstItem="fiq-YO-rNF" firstAttribute="top" secondItem="pmu-z6-Mpy" secondAttribute="top" id="pja-sn-8gR"/>
+                            <constraint firstItem="5FH-5u-k6M" firstAttribute="leading" secondItem="pmu-z6-Mpy" secondAttribute="leading" id="v0J-mu-t1Y"/>
+                        </constraints>
+                    </view>
+                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="hF0-2s-hZo">
+                        <rect key="frame" x="15" y="123.5" width="290" height="0.5"/>
+                        <color key="backgroundColor" red="0.8980392157" green="0.8980392157" blue="0.8980392157" alpha="1" colorSpace="calibratedRGB"/>
+                        <constraints>
+                            <constraint firstAttribute="height" constant="0.5" id="9DB-ZH-SiN"/>
+                        </constraints>
+                    </view>
+                </subviews>
+                <constraints>
+                    <constraint firstItem="pmu-z6-Mpy" firstAttribute="centerY" secondItem="W3c-rb-Oax" secondAttribute="centerY" id="Fnp-zK-qY2"/>
+                    <constraint firstAttribute="trailing" secondItem="hF0-2s-hZo" secondAttribute="trailing" constant="15" id="HkM-ge-zTr"/>
+                    <constraint firstAttribute="trailing" secondItem="pmu-z6-Mpy" secondAttribute="trailing" constant="15" id="Uds-NE-hYW"/>
+                    <constraint firstAttribute="bottom" secondItem="hF0-2s-hZo" secondAttribute="bottom" id="ZXg-sm-aDq"/>
+                    <constraint firstItem="W3c-rb-Oax" firstAttribute="top" secondItem="wtM-Oa-dfY" secondAttribute="top" constant="15" id="bBC-vT-cRn"/>
+                    <constraint firstItem="pmu-z6-Mpy" firstAttribute="leading" secondItem="W3c-rb-Oax" secondAttribute="trailing" constant="14" id="coH-Pt-IyP"/>
+                    <constraint firstItem="kQ1-P7-i6T" firstAttribute="centerX" secondItem="W3c-rb-Oax" secondAttribute="centerX" id="jQR-1g-7r0"/>
+                    <constraint firstItem="hF0-2s-hZo" firstAttribute="leading" secondItem="wtM-Oa-dfY" secondAttribute="leading" constant="15" id="khP-eI-f4P"/>
+                    <constraint firstItem="kQ1-P7-i6T" firstAttribute="centerY" secondItem="W3c-rb-Oax" secondAttribute="centerY" id="lTy-2h-mKw"/>
+                    <constraint firstItem="W3c-rb-Oax" firstAttribute="leading" secondItem="wtM-Oa-dfY" secondAttribute="leading" constant="15" id="vXU-Qc-OYs"/>
+                </constraints>
+            </tableViewCellContentView>
+            <viewLayoutGuide key="safeArea" id="bFv-2c-suq"/>
+            <connections>
+                <outlet property="conView" destination="pmu-z6-Mpy" id="U9f-eU-1oY"/>
+                <outlet property="constant" destination="Zfs-eR-rOB" id="u0n-80-Mmr"/>
+                <outlet property="imagV" destination="W3c-rb-Oax" id="juE-EA-82E"/>
+                <outlet property="nameL" destination="5FH-5u-k6M" id="oFe-9n-6vY"/>
+                <outlet property="playImgV" destination="kQ1-P7-i6T" id="CZP-AU-hzw"/>
+                <outlet property="subTitleL" destination="i4b-7S-ted" id="45m-3V-zDv"/>
+                <outlet property="titleL" destination="fiq-YO-rNF" id="AuG-uQ-lOF"/>
+            </connections>
+            <point key="canvasLocation" x="137.68115942028987" y="138.61607142857142"/>
+        </tableViewCell>
+        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="BookCardPayAlertCell2" rowHeight="87" id="tHx-LU-ThO" customClass="BookContentCell">
+            <rect key="frame" x="0.0" y="0.0" width="320" height="88"/>
+            <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+            <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="tHx-LU-ThO" id="7J1-pz-gDr">
+                <rect key="frame" x="0.0" y="0.0" width="320" height="88"/>
+                <autoresizingMask key="autoresizingMask"/>
+                <subviews>
+                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="img_placeHolder" translatesAutoresizingMaskIntoConstraints="NO" id="rHx-Wg-fcz">
+                        <rect key="frame" x="15" y="24" width="40" height="40"/>
+                        <constraints>
+                            <constraint firstAttribute="height" constant="40" id="YFM-DI-3Jb"/>
+                            <constraint firstAttribute="width" constant="40" id="mG1-N5-zgu"/>
+                        </constraints>
+                        <userDefinedRuntimeAttributes>
+                            <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
+                                <integer key="value" value="20"/>
+                            </userDefinedRuntimeAttribute>
+                            <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                        </userDefinedRuntimeAttributes>
+                    </imageView>
+                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Book_Musicplay_btn" translatesAutoresizingMaskIntoConstraints="NO" id="yJK-4E-K62">
+                        <rect key="frame" x="29.5" y="38" width="11" height="12.5"/>
+                    </imageView>
+                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Yns-yl-ovg">
+                        <rect key="frame" x="70" y="20" width="220.5" height="48"/>
+                        <subviews>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="252" verticalCompressionResistancePriority="751" text="小学教材全解(四年级语文下)" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="mwn-3E-0Wr">
+                                <rect key="frame" x="0.0" y="0.0" width="220.5" height="21"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="252" text="王德培等" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="sTz-eH-zC1">
+                                <rect key="frame" x="0.0" y="31" width="220.5" height="15"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                <color key="textColor" red="0.36470588240000001" green="0.3921568627" blue="0.43137254899999999" alpha="0.84705882349999995" colorSpace="calibratedRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                        </subviews>
+                        <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                        <constraints>
+                            <constraint firstItem="mwn-3E-0Wr" firstAttribute="top" secondItem="Yns-yl-ovg" secondAttribute="top" id="5hD-RC-oZ2"/>
+                            <constraint firstAttribute="trailing" secondItem="mwn-3E-0Wr" secondAttribute="trailing" id="94k-Me-Epy"/>
+                            <constraint firstItem="sTz-eH-zC1" firstAttribute="leading" secondItem="Yns-yl-ovg" secondAttribute="leading" id="IlY-7r-Tcc"/>
+                            <constraint firstAttribute="trailing" secondItem="sTz-eH-zC1" secondAttribute="trailing" id="Y0T-BY-Uxh"/>
+                            <constraint firstAttribute="height" constant="48" id="feq-Rx-Cbb"/>
+                            <constraint firstItem="mwn-3E-0Wr" firstAttribute="leading" secondItem="Yns-yl-ovg" secondAttribute="leading" id="mDR-Nt-8rb"/>
+                            <constraint firstItem="sTz-eH-zC1" firstAttribute="top" secondItem="mwn-3E-0Wr" secondAttribute="bottom" constant="10" id="nEw-Fv-tNK"/>
+                        </constraints>
+                    </view>
+                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="6Ag-Vj-Iun">
+                        <rect key="frame" x="15" y="87.5" width="290" height="0.5"/>
+                        <color key="backgroundColor" red="0.89803921568627454" green="0.89803921568627454" blue="0.89803921568627454" alpha="1" colorSpace="calibratedRGB"/>
+                        <constraints>
+                            <constraint firstAttribute="height" constant="0.5" id="DwM-Kl-ND8"/>
+                        </constraints>
+                    </view>
+                </subviews>
+                <constraints>
+                    <constraint firstAttribute="trailing" secondItem="6Ag-Vj-Iun" secondAttribute="trailing" constant="15" id="1IG-og-wTv"/>
+                    <constraint firstItem="Yns-yl-ovg" firstAttribute="leading" secondItem="rHx-Wg-fcz" secondAttribute="trailing" constant="15" id="9Xz-b5-eZl"/>
+                    <constraint firstItem="rHx-Wg-fcz" firstAttribute="centerY" secondItem="7J1-pz-gDr" secondAttribute="centerY" id="TQx-o2-Xbp"/>
+                    <constraint firstItem="yJK-4E-K62" firstAttribute="centerY" secondItem="rHx-Wg-fcz" secondAttribute="centerY" id="WxW-dF-NfO"/>
+                    <constraint firstItem="Yns-yl-ovg" firstAttribute="centerY" secondItem="rHx-Wg-fcz" secondAttribute="centerY" id="bq0-Lr-PUH"/>
+                    <constraint firstItem="rHx-Wg-fcz" firstAttribute="leading" secondItem="7J1-pz-gDr" secondAttribute="leading" constant="15" id="eWa-Oz-cad"/>
+                    <constraint firstItem="6Ag-Vj-Iun" firstAttribute="leading" secondItem="7J1-pz-gDr" secondAttribute="leading" constant="15" id="k3c-fm-yBt"/>
+                    <constraint firstItem="yJK-4E-K62" firstAttribute="centerX" secondItem="rHx-Wg-fcz" secondAttribute="centerX" id="nle-Ag-Mze"/>
+                    <constraint firstAttribute="bottom" secondItem="6Ag-Vj-Iun" secondAttribute="bottom" id="oQM-TJ-JVL"/>
+                </constraints>
+            </tableViewCellContentView>
+            <viewLayoutGuide key="safeArea" id="sJx-re-6hW"/>
+            <connections>
+                <outlet property="conView" destination="Yns-yl-ovg" id="Or7-ER-abF"/>
+                <outlet property="constant" destination="feq-Rx-Cbb" id="igU-oK-Ctf"/>
+                <outlet property="imagV" destination="rHx-Wg-fcz" id="0Yf-Fd-QNY"/>
+                <outlet property="subTitleL" destination="sTz-eH-zC1" id="zqs-ID-G8h"/>
+                <outlet property="titleL" destination="mwn-3E-0Wr" id="ZFt-QO-dvr"/>
+            </connections>
+            <point key="canvasLocation" x="137.68115942028987" y="284.59821428571428"/>
+        </tableViewCell>
+    </objects>
+    <resources>
+        <image name="Book_Musicplay_btn" width="11" height="12.5"/>
+        <image name="Book_Videoplay_btn" width="24.5" height="28"/>
+        <image name="img_placeHolder" width="70" height="70"/>
+    </resources>
+</document>

+ 28 - 0
smartRhino/Project/VCModel/Home/VC/BookStore/View/BookLoginPayAlert.h

@@ -0,0 +1,28 @@
+//
+//  PayAlert.h
+//  smartRhino
+//
+//  Created by niuzhen on 2020/4/30.
+//  Copyright © 2020 tederen. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+#import "BSAlertView.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface BookLoginPayAlert : BSAlertView
+@property (weak, nonatomic) IBOutlet UITableView *tableView;
+@property (weak, nonatomic) IBOutlet UIView *AlertView;
+@property (weak, nonatomic) IBOutlet UIButton *disBtn;
+@property (weak, nonatomic) IBOutlet UIButton *payBtn;
+@property (weak, nonatomic) IBOutlet UIButton *alertCloseBtn;
+@property (weak, nonatomic) IBOutlet UIButton *cardBtn;
+@property (weak, nonatomic) IBOutlet UILabel  *moneyL;
+
++ (instancetype)share;
+- (void)show;
+- (void)dismiss;
+@end
+
+NS_ASSUME_NONNULL_END

+ 64 - 0
smartRhino/Project/VCModel/Home/VC/BookStore/View/BookLoginPayAlert.m

@@ -0,0 +1,64 @@
+//
+//  PayAlert.m
+//  smartRhino
+//
+//  Created by niuzhen on 2020/4/30.
+//  Copyright © 2020 tederen. All rights reserved.
+//
+
+#import "BookLoginPayAlert.h"
+#import "BookCardPayAlertCell.h"
+
+static UINib *ViewNib = nil;
+@interface BookLoginPayAlert()<UITableViewDelegate,UITableViewDataSource>
+@end
+@implementation BookLoginPayAlert
++ (instancetype)share
+{
+    if (ViewNib == nil) {
+        ViewNib = [UINib nibWithNibName:@"BookLoginPayAlert" bundle:nil];
+    }
+    BookLoginPayAlert *alert = [[ViewNib instantiateWithOwner:nil options:nil] lastObject];
+    [alert setFrame:CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT)];
+    alert.bgColor = [UIColor clearColor];
+    alert.tableView.delegate = alert;
+    alert.tableView.dataSource = alert;
+    [alert.disBtn addTarget:alert action:@selector(dismiss) forControlEvents:UIControlEventTouchUpInside];
+    [alert.alertCloseBtn addTarget:alert action:@selector(dismiss) forControlEvents:UIControlEventTouchUpInside];
+    [alert.tableView beginUpdates];
+    [alert.tableView reloadData];
+    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
+        [alert.tableView endUpdates];
+    });
+    return alert;
+}
+
+- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
+{
+    return 1;
+}
+- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
+{
+    return 160.f;
+}
+- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
+{
+    BookCardPayAlertCell * cell = [BookCardPayAlertCell configCell0:tableView indexPath:indexPath];
+    BookContentModel * model = [[BookContentModel alloc] init];
+    model.title = @"学生必背的历朝历代名篇 名句400句";
+    model.name = @"观影有效期:2020-04-25  14:20";
+    model.subtitle = @"可在泰德信源电脑/手机多终端观看";
+    [cell setDataWithModel:model];
+    return cell;
+}
+
+- (void)show
+{
+    [super show];
+}
+- (void)dismiss
+{
+    [self dismissWithAnimation:kAlertAnimationBottom];
+}
+
+@end

+ 149 - 0
smartRhino/Project/VCModel/Home/VC/BookStore/View/BookLoginPayAlert.xib

@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="15705" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina6_1" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15706"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <view contentMode="scaleToFill" id="iN0-l3-epB" customClass="BookLoginPayAlert">
+            <rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
+            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+            <subviews>
+                <button opaque="NO" alpha="0.5" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Hwm-BA-YR7">
+                    <rect key="frame" x="0.0" y="44" width="414" height="852"/>
+                    <color key="backgroundColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                </button>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="HQi-LA-dF0">
+                    <rect key="frame" x="16" y="250.5" width="382" height="395"/>
+                    <subviews>
+                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="mbV-BO-wly">
+                            <rect key="frame" x="0.0" y="0.0" width="382" height="340"/>
+                            <subviews>
+                                <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" scrollEnabled="NO" style="plain" separatorStyle="none" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="28" sectionFooterHeight="28" translatesAutoresizingMaskIntoConstraints="NO" id="MX1-SE-dMg">
+                                    <rect key="frame" x="20" y="44" width="342" height="160"/>
+                                    <color key="backgroundColor" red="0.94901960784313721" green="0.97647058823529409" blue="0.99607843137254903" alpha="1" colorSpace="calibratedRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="160" id="w29-07-lGJ"/>
+                                    </constraints>
+                                </tableView>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="lfu-Nd-poI">
+                                    <rect key="frame" x="20" y="209" width="342" height="0.5"/>
+                                    <color key="backgroundColor" red="0.78823529410000004" green="0.90588235289999997" blue="0.98823529409999999" alpha="1" colorSpace="calibratedRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="0.5" id="FlG-h3-5hf"/>
+                                    </constraints>
+                                </view>
+                                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Rew-iD-yXG">
+                                    <rect key="frame" x="330" y="0.0" width="44" height="44"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="44" id="Kz1-J3-6Pu"/>
+                                        <constraint firstAttribute="width" constant="44" id="LEe-Vp-DEm"/>
+                                    </constraints>
+                                    <state key="normal" image="Book_close_gray"/>
+                                </button>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="应版权方要求,该片需要购买观看" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="tip-zU-C6v">
+                                    <rect key="frame" x="20" y="249.5" width="342" height="18"/>
+                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                    <nil key="textColor"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="请先" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Pzc-km-ysY">
+                                    <rect key="frame" x="157" y="281.5" width="31" height="18"/>
+                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                    <color key="textColor" red="0.039215686274509803" green="0.039215686274509803" blue="0.039215686274509803" alpha="0.84705882349999995" colorSpace="calibratedRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="登录" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="cLE-Y6-PF7">
+                                    <rect key="frame" x="194" y="281.5" width="31" height="18"/>
+                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                    <color key="textColor" red="0.22352941176470587" green="0.47450980392156861" blue="0.82745098039215681" alpha="0.84705882349999995" colorSpace="calibratedRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                            </subviews>
+                            <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <constraints>
+                                <constraint firstItem="Pzc-km-ysY" firstAttribute="trailing" secondItem="mbV-BO-wly" secondAttribute="centerX" constant="-3" id="11e-bt-gF7"/>
+                                <constraint firstItem="Rew-iD-yXG" firstAttribute="top" secondItem="mbV-BO-wly" secondAttribute="top" id="2Xm-mg-cDz"/>
+                                <constraint firstItem="MX1-SE-dMg" firstAttribute="top" secondItem="Rew-iD-yXG" secondAttribute="bottom" id="Aw8-aA-7ti"/>
+                                <constraint firstAttribute="trailing" secondItem="lfu-Nd-poI" secondAttribute="trailing" constant="20" id="COE-Ag-8gW"/>
+                                <constraint firstItem="tip-zU-C6v" firstAttribute="top" secondItem="lfu-Nd-poI" secondAttribute="bottom" constant="40" id="ERw-5f-dae"/>
+                                <constraint firstItem="Pzc-km-ysY" firstAttribute="top" secondItem="tip-zU-C6v" secondAttribute="bottom" constant="14" id="K7j-ln-BuA"/>
+                                <constraint firstItem="MX1-SE-dMg" firstAttribute="leading" secondItem="mbV-BO-wly" secondAttribute="leading" constant="20" id="LiX-xb-Yng"/>
+                                <constraint firstItem="cLE-Y6-PF7" firstAttribute="top" secondItem="tip-zU-C6v" secondAttribute="bottom" constant="14" id="MwI-5S-s1w"/>
+                                <constraint firstItem="cLE-Y6-PF7" firstAttribute="leading" secondItem="mbV-BO-wly" secondAttribute="centerX" constant="3" id="N1k-sS-qQ5"/>
+                                <constraint firstAttribute="trailing" secondItem="Rew-iD-yXG" secondAttribute="trailing" constant="8" id="Q1m-uY-s2B"/>
+                                <constraint firstAttribute="height" constant="340" id="hCA-bg-sNB"/>
+                                <constraint firstAttribute="trailing" secondItem="MX1-SE-dMg" secondAttribute="trailing" constant="20" id="hsS-Wf-9ee"/>
+                                <constraint firstItem="lfu-Nd-poI" firstAttribute="leading" secondItem="mbV-BO-wly" secondAttribute="leading" constant="20" id="qqB-wx-1iP"/>
+                                <constraint firstAttribute="trailing" secondItem="tip-zU-C6v" secondAttribute="trailing" constant="20" id="seF-k5-Kie"/>
+                                <constraint firstItem="lfu-Nd-poI" firstAttribute="top" secondItem="MX1-SE-dMg" secondAttribute="bottom" constant="5" id="wnx-Cf-gr3"/>
+                                <constraint firstItem="tip-zU-C6v" firstAttribute="leading" secondItem="mbV-BO-wly" secondAttribute="leading" constant="20" id="zDn-zt-imt"/>
+                            </constraints>
+                            <userDefinedRuntimeAttributes>
+                                <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
+                                    <integer key="value" value="15"/>
+                                </userDefinedRuntimeAttribute>
+                                <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                            </userDefinedRuntimeAttributes>
+                        </view>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="jTH-um-Pl3">
+                            <rect key="frame" x="0.0" y="340" width="382" height="55"/>
+                            <color key="backgroundColor" red="0.20000000000000001" green="0.52941176470588236" blue="0.93725490196078431" alpha="1" colorSpace="calibratedRGB"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="55" id="JwZ-dR-nuJ"/>
+                            </constraints>
+                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                            <state key="normal" title="立即登录">
+                                <color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            </state>
+                        </button>
+                    </subviews>
+                    <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+                    <constraints>
+                        <constraint firstItem="mbV-BO-wly" firstAttribute="top" secondItem="HQi-LA-dF0" secondAttribute="top" id="C43-gH-aJi"/>
+                        <constraint firstItem="mbV-BO-wly" firstAttribute="leading" secondItem="HQi-LA-dF0" secondAttribute="leading" id="EvF-wv-25y"/>
+                        <constraint firstItem="jTH-um-Pl3" firstAttribute="leading" secondItem="HQi-LA-dF0" secondAttribute="leading" id="IS4-OZ-iyX"/>
+                        <constraint firstAttribute="height" constant="395" id="LDK-PI-6LW"/>
+                        <constraint firstAttribute="trailing" secondItem="jTH-um-Pl3" secondAttribute="trailing" id="Ql3-r4-CVq"/>
+                        <constraint firstAttribute="trailing" secondItem="mbV-BO-wly" secondAttribute="trailing" id="mya-2b-aVl"/>
+                        <constraint firstItem="jTH-um-Pl3" firstAttribute="top" secondItem="mbV-BO-wly" secondAttribute="bottom" id="zI8-WH-aMd"/>
+                    </constraints>
+                    <userDefinedRuntimeAttributes>
+                        <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
+                            <integer key="value" value="15"/>
+                        </userDefinedRuntimeAttribute>
+                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                    </userDefinedRuntimeAttributes>
+                </view>
+            </subviews>
+            <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+            <constraints>
+                <constraint firstItem="Hwm-BA-YR7" firstAttribute="top" secondItem="vUN-kp-3ea" secondAttribute="top" id="5sV-d7-Ycq"/>
+                <constraint firstItem="vUN-kp-3ea" firstAttribute="trailing" secondItem="HQi-LA-dF0" secondAttribute="trailing" constant="16" id="AFk-YQ-hTk"/>
+                <constraint firstAttribute="bottom" secondItem="Hwm-BA-YR7" secondAttribute="bottom" id="Kn0-Mu-jRT"/>
+                <constraint firstItem="vUN-kp-3ea" firstAttribute="trailing" secondItem="Hwm-BA-YR7" secondAttribute="trailing" id="QJV-AT-5Sh"/>
+                <constraint firstItem="HQi-LA-dF0" firstAttribute="leading" secondItem="vUN-kp-3ea" secondAttribute="leading" constant="16" id="XMq-vR-T3b"/>
+                <constraint firstItem="HQi-LA-dF0" firstAttribute="centerY" secondItem="iN0-l3-epB" secondAttribute="centerY" id="wHg-Wh-NM9"/>
+                <constraint firstItem="Hwm-BA-YR7" firstAttribute="leading" secondItem="vUN-kp-3ea" secondAttribute="leading" id="xEH-BX-Ebr"/>
+            </constraints>
+            <viewLayoutGuide key="safeArea" id="vUN-kp-3ea"/>
+            <connections>
+                <outlet property="AlertView" destination="HQi-LA-dF0" id="dRy-4X-KRc"/>
+                <outlet property="alertCloseBtn" destination="Rew-iD-yXG" id="NGs-V1-hJ6"/>
+                <outlet property="disBtn" destination="Hwm-BA-YR7" id="3cR-aX-KrC"/>
+                <outlet property="moneyL" destination="tip-zU-C6v" id="ICu-cZ-AOF"/>
+                <outlet property="payBtn" destination="jTH-um-Pl3" id="6tp-fY-qhU"/>
+                <outlet property="tableView" destination="MX1-SE-dMg" id="Xia-l5-P2p"/>
+            </connections>
+            <point key="canvasLocation" x="137.68115942028987" y="152.67857142857142"/>
+        </view>
+    </objects>
+    <resources>
+        <image name="Book_close_gray" width="14.5" height="14.5"/>
+    </resources>
+</document>

+ 26 - 0
smartRhino/Project/VCModel/Home/VC/BookStore/View/PayBookAlert.h

@@ -0,0 +1,26 @@
+//
+//  PayAlert.h
+//  smartRhino
+//
+//  Created by niuzhen on 2020/4/30.
+//  Copyright © 2020 tederen. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+#import "BSAlertView.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface PayBookAlert : BSAlertView
+@property (weak, nonatomic) IBOutlet UITableView *tableView;
+@property (weak, nonatomic) IBOutlet UIView *AlertView;
+@property (weak, nonatomic) IBOutlet UIButton *disBtn;
+@property (weak, nonatomic) IBOutlet UIButton *payBtn;
+@property (weak, nonatomic) IBOutlet UIButton *alertCloseBtn;
+@property (strong, nonatomic) NSMutableArray    *dataArray;
++ (instancetype)share;
+- (void)show;
+- (void)dismiss;
+@end
+
+NS_ASSUME_NONNULL_END

+ 94 - 0
smartRhino/Project/VCModel/Home/VC/BookStore/View/PayBookAlert.m

@@ -0,0 +1,94 @@
+//
+//  PayAlert.m
+//  smartRhino
+//
+//  Created by niuzhen on 2020/4/30.
+//  Copyright © 2020 tederen. All rights reserved.
+//
+
+#import "PayBookAlert.h"
+#import "PayBookAlertCell.h"
+#import "BookAlertModel.h"
+
+static UINib *ViewNib = nil;
+@interface PayBookAlert()<UITableViewDelegate,UITableViewDataSource>
+@end
+@implementation PayBookAlert
++ (instancetype)share
+{
+    if (ViewNib == nil) {
+        ViewNib = [UINib nibWithNibName:@"PayBookAlert" bundle:nil];
+    }
+    PayBookAlert *alert = [[ViewNib instantiateWithOwner:nil options:nil] lastObject];
+    [alert setFrame:CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT)];
+    alert.bgColor = [UIColor clearColor];
+    alert.tableView.delegate = alert;
+    alert.tableView.dataSource = alert;
+    [alert.disBtn addTarget:alert action:@selector(dismiss) forControlEvents:UIControlEventTouchUpInside];
+    [alert.alertCloseBtn addTarget:alert action:@selector(dismiss) forControlEvents:UIControlEventTouchUpInside];
+    [alert setArray];
+    [alert.tableView reloadData];
+    return alert;
+}
+- (void)setArray
+{
+    self.dataArray = [NSMutableArray array];
+    BookAlertModel * amodel = [[BookAlertModel alloc] init];
+    amodel.title = @"9.00";
+    amodel.subtitle = @"连续包月19元/月 ·  自动续期可随时取消";
+    amodel.isSelect = YES;
+    [self.dataArray addObject:amodel];
+    
+    BookAlertModel * bmodel = [[BookAlertModel alloc] init];
+    bmodel.title = @"30.00";
+    bmodel.subtitle = @"月卡 ·  30元/月";
+    bmodel.isSelect = NO;
+    [self.dataArray addObject:bmodel];
+    
+    BookAlertModel * cmodel = [[BookAlertModel alloc] init];
+    cmodel.title = @"60.00";
+    cmodel.subtitle = @"季卡 ·  20元/月";
+    cmodel.isSelect = NO;
+    [self.dataArray addObject:cmodel];
+    
+    BookAlertModel * dmodel = [[BookAlertModel alloc] init];
+    dmodel.title = @"228.00";
+    dmodel.subtitle = @"年卡 ·  12.3元/月";
+    dmodel.isSelect = NO;
+    [self.dataArray addObject:dmodel];
+}
+- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
+{
+    return self.dataArray.count;
+}
+- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
+{
+    return [PayBookAlertCell configCellHeight];
+}
+- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
+{
+    PayBookAlertCell * cell = [PayBookAlertCell configCell:tableView indexPath:indexPath];
+    BookAlertModel * model = [self.dataArray objectAtIndex:indexPath.row];
+    [cell setDataModel:model];
+    return cell;
+}
+- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
+{
+    [tableView deselectRowAtIndexPath:indexPath animated:YES];
+    BookAlertModel * model = [self.dataArray objectAtIndex:indexPath.row];
+    for (BookAlertModel * sModel in self.dataArray) {
+        sModel.isSelect = NO;
+    }
+    model.isSelect = YES;
+    [self.tableView reloadData];
+}
+- (void)show
+{
+    [super show];
+}
+- (void)dismiss
+{
+    [self dismissWithAnimation:kAlertAnimationBottom];
+}
+
+@end

+ 336 - 0
smartRhino/Project/VCModel/Home/VC/BookStore/View/PayBookAlert.xib

@@ -0,0 +1,336 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="15705" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina6_1" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15706"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <view contentMode="scaleToFill" id="iN0-l3-epB" customClass="PayBookAlert">
+            <rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
+            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+            <subviews>
+                <button opaque="NO" alpha="0.5" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Hwm-BA-YR7">
+                    <rect key="frame" x="0.0" y="44" width="414" height="852"/>
+                    <color key="backgroundColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                </button>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="HQi-LA-dF0">
+                    <rect key="frame" x="16" y="174.5" width="382" height="547"/>
+                    <subviews>
+                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="mbV-BO-wly">
+                            <rect key="frame" x="0.0" y="0.0" width="382" height="492"/>
+                            <subviews>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="4FS-Rp-fQs">
+                                    <rect key="frame" x="0.0" y="0.0" width="382" height="40"/>
+                                    <subviews>
+                                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="fwH-9D-EqM">
+                                            <rect key="frame" x="334" y="0.0" width="40" height="40"/>
+                                            <constraints>
+                                                <constraint firstAttribute="width" constant="40" id="p8O-XJ-uXo"/>
+                                            </constraints>
+                                            <state key="normal" image="Book_alert_close"/>
+                                        </button>
+                                    </subviews>
+                                    <color key="backgroundColor" red="0.45098039220000002" green="0.72549019609999998" blue="0.91764705879999997" alpha="1" colorSpace="calibratedRGB"/>
+                                    <constraints>
+                                        <constraint firstItem="fwH-9D-EqM" firstAttribute="top" secondItem="4FS-Rp-fQs" secondAttribute="top" id="6BD-79-H3D"/>
+                                        <constraint firstAttribute="trailing" secondItem="fwH-9D-EqM" secondAttribute="trailing" constant="8" id="ALY-MH-XPI"/>
+                                        <constraint firstAttribute="bottom" secondItem="fwH-9D-EqM" secondAttribute="bottom" id="mnj-GV-9AW"/>
+                                        <constraint firstAttribute="height" constant="40" id="nTv-qJ-4b8"/>
+                                    </constraints>
+                                </view>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="无限卡权益" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="AVc-wq-4WI">
+                                    <rect key="frame" x="22" y="13" width="61.5" height="14.5"/>
+                                    <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                    <color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="pJE-wL-O57">
+                                    <rect key="frame" x="0.0" y="40" width="382" height="150"/>
+                                    <subviews>
+                                        <stackView opaque="NO" contentMode="scaleToFill" distribution="fillEqually" baselineRelativeArrangement="YES" translatesAutoresizingMaskIntoConstraints="NO" id="UJa-CQ-RVW">
+                                            <rect key="frame" x="7" y="0.0" width="368" height="150"/>
+                                            <subviews>
+                                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="FmI-SH-JnX">
+                                                    <rect key="frame" x="0.0" y="0.0" width="92" height="150"/>
+                                                    <subviews>
+                                                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="mine_book_icon" translatesAutoresizingMaskIntoConstraints="NO" id="TxR-H1-QFe">
+                                                            <rect key="frame" x="-5.5" y="28" width="103" height="103"/>
+                                                        </imageView>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="全场出版书" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="P5i-Ub-aXw">
+                                                            <rect key="frame" x="18" y="144" width="56.5" height="13.5"/>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="11"/>
+                                                            <color key="textColor" red="0.039215686270000001" green="0.039215686270000001" blue="0.039215686270000001" alpha="1" colorSpace="calibratedRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="免费读" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vEG-C9-K2q">
+                                                            <rect key="frame" x="29" y="165.5" width="34" height="13.5"/>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="11"/>
+                                                            <color key="textColor" red="0.79607843140000001" green="0.55294117649999996" blue="0.12549019610000001" alpha="1" colorSpace="calibratedRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="WH0-02-7o4">
+                                                            <rect key="frame" x="0.0" y="0.0" width="92" height="150"/>
+                                                            <color key="tintColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                            <state key="normal">
+                                                                <color key="titleColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                            </state>
+                                                        </button>
+                                                    </subviews>
+                                                    <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                    <constraints>
+                                                        <constraint firstItem="P5i-Ub-aXw" firstAttribute="top" secondItem="TxR-H1-QFe" secondAttribute="bottom" constant="13" id="6vh-HO-bs4"/>
+                                                        <constraint firstItem="TxR-H1-QFe" firstAttribute="top" secondItem="FmI-SH-JnX" secondAttribute="top" constant="28" id="Gy0-sC-56H"/>
+                                                        <constraint firstItem="vEG-C9-K2q" firstAttribute="top" secondItem="P5i-Ub-aXw" secondAttribute="bottom" constant="8" id="d90-E1-LbE"/>
+                                                        <constraint firstAttribute="trailing" secondItem="WH0-02-7o4" secondAttribute="trailing" id="fON-jG-0Rt"/>
+                                                        <constraint firstItem="WH0-02-7o4" firstAttribute="top" secondItem="FmI-SH-JnX" secondAttribute="top" id="lZ9-Mr-hnI"/>
+                                                        <constraint firstAttribute="bottom" secondItem="WH0-02-7o4" secondAttribute="bottom" id="p8E-9J-fsh"/>
+                                                        <constraint firstItem="P5i-Ub-aXw" firstAttribute="centerX" secondItem="FmI-SH-JnX" secondAttribute="centerX" id="rUX-Oh-h2N"/>
+                                                        <constraint firstItem="vEG-C9-K2q" firstAttribute="centerX" secondItem="FmI-SH-JnX" secondAttribute="centerX" id="rzy-zf-ae0"/>
+                                                        <constraint firstItem="WH0-02-7o4" firstAttribute="leading" secondItem="FmI-SH-JnX" secondAttribute="leading" id="uae-Xx-zDw"/>
+                                                        <constraint firstItem="TxR-H1-QFe" firstAttribute="centerX" secondItem="FmI-SH-JnX" secondAttribute="centerX" id="xeP-QP-wNg"/>
+                                                    </constraints>
+                                                </view>
+                                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="GYp-Fe-n3O">
+                                                    <rect key="frame" x="92" y="0.0" width="92" height="150"/>
+                                                    <subviews>
+                                                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="mine_ting_icon" translatesAutoresizingMaskIntoConstraints="NO" id="yX4-LC-kha">
+                                                            <rect key="frame" x="-5.5" y="28" width="103" height="103"/>
+                                                        </imageView>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="全场有声内容" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="sTw-Am-8IW">
+                                                            <rect key="frame" x="12.5" y="144" width="67.5" height="13.5"/>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="11"/>
+                                                            <color key="textColor" red="0.039215686270000001" green="0.039215686270000001" blue="0.039215686270000001" alpha="1" colorSpace="calibratedRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="免费听" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Kb2-xZ-mJz">
+                                                            <rect key="frame" x="29" y="165.5" width="34" height="13.5"/>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="11"/>
+                                                            <color key="textColor" red="0.79607843140000001" green="0.55294117649999996" blue="0.12549019610000001" alpha="1" colorSpace="calibratedRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Z9q-rv-456">
+                                                            <rect key="frame" x="0.0" y="0.0" width="92" height="150"/>
+                                                            <color key="tintColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                            <state key="normal">
+                                                                <color key="titleColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                            </state>
+                                                        </button>
+                                                    </subviews>
+                                                    <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="trailing" secondItem="Z9q-rv-456" secondAttribute="trailing" id="DF6-JV-Kgt"/>
+                                                        <constraint firstAttribute="bottom" secondItem="Z9q-rv-456" secondAttribute="bottom" id="Gbx-F4-Iq4"/>
+                                                        <constraint firstItem="Z9q-rv-456" firstAttribute="top" secondItem="GYp-Fe-n3O" secondAttribute="top" id="IQw-5t-P07"/>
+                                                        <constraint firstItem="yX4-LC-kha" firstAttribute="top" secondItem="GYp-Fe-n3O" secondAttribute="top" constant="28" id="RjZ-Hb-gGh"/>
+                                                        <constraint firstItem="sTw-Am-8IW" firstAttribute="centerX" secondItem="GYp-Fe-n3O" secondAttribute="centerX" id="TSk-hK-fcq"/>
+                                                        <constraint firstItem="Kb2-xZ-mJz" firstAttribute="centerX" secondItem="GYp-Fe-n3O" secondAttribute="centerX" id="YVY-Sr-epg"/>
+                                                        <constraint firstItem="yX4-LC-kha" firstAttribute="centerX" secondItem="GYp-Fe-n3O" secondAttribute="centerX" id="j70-zm-ULq"/>
+                                                        <constraint firstItem="sTw-Am-8IW" firstAttribute="top" secondItem="yX4-LC-kha" secondAttribute="bottom" constant="13" id="jAS-Nr-UqO"/>
+                                                        <constraint firstItem="Z9q-rv-456" firstAttribute="leading" secondItem="GYp-Fe-n3O" secondAttribute="leading" id="jx6-NL-pgY"/>
+                                                        <constraint firstItem="Kb2-xZ-mJz" firstAttribute="top" secondItem="sTw-Am-8IW" secondAttribute="bottom" constant="8" id="mbo-Q4-KE3"/>
+                                                    </constraints>
+                                                </view>
+                                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="iUR-VF-WbY">
+                                                    <rect key="frame" x="184" y="0.0" width="92" height="150"/>
+                                                    <subviews>
+                                                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="mine_man_icon" translatesAutoresizingMaskIntoConstraints="NO" id="uXq-xt-02f">
+                                                            <rect key="frame" x="-5.5" y="28" width="103" height="103"/>
+                                                        </imageView>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="全场漫画书" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6xF-Lf-ZGc">
+                                                            <rect key="frame" x="18" y="144" width="56.5" height="13.5"/>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="11"/>
+                                                            <color key="textColor" red="0.039215686270000001" green="0.039215686270000001" blue="0.039215686270000001" alpha="1" colorSpace="calibratedRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="免费看" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="VLX-pe-iWc">
+                                                            <rect key="frame" x="29" y="165.5" width="34" height="13.5"/>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="11"/>
+                                                            <color key="textColor" red="0.79607843140000001" green="0.55294117649999996" blue="0.12549019610000001" alpha="1" colorSpace="calibratedRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="rGT-6X-aMy">
+                                                            <rect key="frame" x="0.0" y="0.0" width="92" height="150"/>
+                                                            <color key="tintColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                            <state key="normal">
+                                                                <color key="titleColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                            </state>
+                                                        </button>
+                                                    </subviews>
+                                                    <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                    <constraints>
+                                                        <constraint firstItem="VLX-pe-iWc" firstAttribute="centerX" secondItem="iUR-VF-WbY" secondAttribute="centerX" id="KIS-eu-PGH"/>
+                                                        <constraint firstItem="6xF-Lf-ZGc" firstAttribute="top" secondItem="uXq-xt-02f" secondAttribute="bottom" constant="13" id="X41-0b-Izl"/>
+                                                        <constraint firstItem="VLX-pe-iWc" firstAttribute="top" secondItem="6xF-Lf-ZGc" secondAttribute="bottom" constant="8" id="d0D-Sq-W9K"/>
+                                                        <constraint firstAttribute="bottom" secondItem="rGT-6X-aMy" secondAttribute="bottom" id="hV3-4A-09x"/>
+                                                        <constraint firstItem="uXq-xt-02f" firstAttribute="centerX" secondItem="iUR-VF-WbY" secondAttribute="centerX" id="jdB-CI-bBs"/>
+                                                        <constraint firstItem="uXq-xt-02f" firstAttribute="top" secondItem="iUR-VF-WbY" secondAttribute="top" constant="28" id="pBv-ND-XQS"/>
+                                                        <constraint firstItem="rGT-6X-aMy" firstAttribute="top" secondItem="iUR-VF-WbY" secondAttribute="top" id="r8o-1u-ORe"/>
+                                                        <constraint firstItem="rGT-6X-aMy" firstAttribute="leading" secondItem="iUR-VF-WbY" secondAttribute="leading" id="tNs-Wu-cIk"/>
+                                                        <constraint firstItem="6xF-Lf-ZGc" firstAttribute="centerX" secondItem="iUR-VF-WbY" secondAttribute="centerX" id="wen-qt-zCb"/>
+                                                        <constraint firstAttribute="trailing" secondItem="rGT-6X-aMy" secondAttribute="trailing" id="zEE-1z-cOi"/>
+                                                    </constraints>
+                                                </view>
+                                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ehl-nc-bEt">
+                                                    <rect key="frame" x="276" y="0.0" width="92" height="150"/>
+                                                    <subviews>
+                                                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="mine_net_icon" translatesAutoresizingMaskIntoConstraints="NO" id="4tW-Ei-ZAz">
+                                                            <rect key="frame" x="-5.5" y="28" width="103" height="103"/>
+                                                        </imageView>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="全场网络小说" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="qwn-e5-TR8">
+                                                            <rect key="frame" x="12.5" y="144" width="67.5" height="13.5"/>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="11"/>
+                                                            <color key="textColor" red="0.039215686270000001" green="0.039215686270000001" blue="0.039215686270000001" alpha="1" colorSpace="calibratedRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="八折购买" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="9gN-dq-d2F">
+                                                            <rect key="frame" x="23.5" y="165.5" width="45" height="13.5"/>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="11"/>
+                                                            <color key="textColor" red="0.79607843140000001" green="0.55294117649999996" blue="0.12549019610000001" alpha="1" colorSpace="calibratedRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="lAh-Sy-eYV">
+                                                            <rect key="frame" x="0.0" y="0.0" width="92" height="150"/>
+                                                            <color key="tintColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                            <state key="normal">
+                                                                <color key="titleColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                            </state>
+                                                        </button>
+                                                    </subviews>
+                                                    <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                    <constraints>
+                                                        <constraint firstItem="qwn-e5-TR8" firstAttribute="top" secondItem="4tW-Ei-ZAz" secondAttribute="bottom" constant="13" id="3uh-Hh-KT4"/>
+                                                        <constraint firstItem="4tW-Ei-ZAz" firstAttribute="top" secondItem="ehl-nc-bEt" secondAttribute="top" constant="28" id="AAQ-v6-Had"/>
+                                                        <constraint firstItem="lAh-Sy-eYV" firstAttribute="top" secondItem="ehl-nc-bEt" secondAttribute="top" id="Agg-bK-Rse"/>
+                                                        <constraint firstItem="qwn-e5-TR8" firstAttribute="centerX" secondItem="ehl-nc-bEt" secondAttribute="centerX" id="FkY-Z6-5Rr"/>
+                                                        <constraint firstItem="lAh-Sy-eYV" firstAttribute="leading" secondItem="ehl-nc-bEt" secondAttribute="leading" id="Iok-Ju-8lA"/>
+                                                        <constraint firstAttribute="bottom" secondItem="lAh-Sy-eYV" secondAttribute="bottom" id="SO8-FP-iMR"/>
+                                                        <constraint firstItem="9gN-dq-d2F" firstAttribute="centerX" secondItem="ehl-nc-bEt" secondAttribute="centerX" id="bBO-6r-etM"/>
+                                                        <constraint firstAttribute="trailing" secondItem="lAh-Sy-eYV" secondAttribute="trailing" id="dRE-vr-VUT"/>
+                                                        <constraint firstItem="4tW-Ei-ZAz" firstAttribute="centerX" secondItem="ehl-nc-bEt" secondAttribute="centerX" id="gHZ-Jk-uFb"/>
+                                                        <constraint firstItem="9gN-dq-d2F" firstAttribute="top" secondItem="qwn-e5-TR8" secondAttribute="bottom" constant="8" id="j5i-0d-hAk"/>
+                                                    </constraints>
+                                                </view>
+                                            </subviews>
+                                        </stackView>
+                                    </subviews>
+                                    <color key="backgroundColor" red="0.94901960780000005" green="0.97647058819999999" blue="0.99607843139999996" alpha="1" colorSpace="calibratedRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="trailing" secondItem="UJa-CQ-RVW" secondAttribute="trailing" constant="7" id="0Po-Cb-7m7"/>
+                                        <constraint firstAttribute="bottom" secondItem="UJa-CQ-RVW" secondAttribute="bottom" id="JH0-iC-4s6"/>
+                                        <constraint firstItem="UJa-CQ-RVW" firstAttribute="top" secondItem="pJE-wL-O57" secondAttribute="top" id="RFj-Al-caX"/>
+                                        <constraint firstAttribute="height" constant="150" id="pL6-Hn-OUP"/>
+                                        <constraint firstItem="UJa-CQ-RVW" firstAttribute="leading" secondItem="pJE-wL-O57" secondAttribute="leading" constant="7" id="xjU-36-iYl"/>
+                                    </constraints>
+                                </view>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="8Kt-eX-1ei">
+                                    <rect key="frame" x="20" y="190" width="342" height="0.5"/>
+                                    <color key="backgroundColor" red="0.78823529411764703" green="0.90588235294117647" blue="0.9882352941176471" alpha="1" colorSpace="calibratedRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="0.5" id="ckK-fs-Itd"/>
+                                    </constraints>
+                                </view>
+                                <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" scrollEnabled="NO" style="plain" separatorStyle="none" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="28" sectionFooterHeight="28" translatesAutoresizingMaskIntoConstraints="NO" id="MX1-SE-dMg">
+                                    <rect key="frame" x="20" y="210.5" width="342" height="271.5"/>
+                                    <color key="backgroundColor" red="0.94901960784313721" green="0.97647058823529409" blue="0.99607843137254903" alpha="1" colorSpace="calibratedRGB"/>
+                                </tableView>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="lfu-Nd-poI">
+                                    <rect key="frame" x="20" y="491.5" width="342" height="0.5"/>
+                                    <color key="backgroundColor" red="0.78823529410000004" green="0.90588235289999997" blue="0.98823529409999999" alpha="1" colorSpace="calibratedRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="0.5" id="FlG-h3-5hf"/>
+                                    </constraints>
+                                </view>
+                            </subviews>
+                            <color key="backgroundColor" red="0.94901960784313721" green="0.97647058823529409" blue="0.99607843137254903" alpha="1" colorSpace="calibratedRGB"/>
+                            <constraints>
+                                <constraint firstItem="4FS-Rp-fQs" firstAttribute="leading" secondItem="mbV-BO-wly" secondAttribute="leading" id="0qZ-tC-Cuk"/>
+                                <constraint firstItem="AVc-wq-4WI" firstAttribute="leading" secondItem="mbV-BO-wly" secondAttribute="leading" constant="22" id="A1a-Xj-GOl"/>
+                                <constraint firstAttribute="trailing" secondItem="lfu-Nd-poI" secondAttribute="trailing" constant="20" id="COE-Ag-8gW"/>
+                                <constraint firstItem="4FS-Rp-fQs" firstAttribute="top" secondItem="mbV-BO-wly" secondAttribute="top" id="DfD-Mw-vUD"/>
+                                <constraint firstItem="pJE-wL-O57" firstAttribute="top" secondItem="4FS-Rp-fQs" secondAttribute="bottom" id="Eb6-ZZ-bVn"/>
+                                <constraint firstAttribute="trailing" secondItem="4FS-Rp-fQs" secondAttribute="trailing" id="Efm-bU-tcW"/>
+                                <constraint firstItem="MX1-SE-dMg" firstAttribute="leading" secondItem="mbV-BO-wly" secondAttribute="leading" constant="20" id="LiX-xb-Yng"/>
+                                <constraint firstAttribute="trailing" secondItem="pJE-wL-O57" secondAttribute="trailing" id="Q0L-yh-Mdn"/>
+                                <constraint firstItem="8Kt-eX-1ei" firstAttribute="leading" secondItem="mbV-BO-wly" secondAttribute="leading" constant="20" id="W4e-4j-IeW"/>
+                                <constraint firstAttribute="bottom" secondItem="MX1-SE-dMg" secondAttribute="bottom" constant="10" id="dTG-lW-gEG"/>
+                                <constraint firstAttribute="height" constant="492" id="hCA-bg-sNB"/>
+                                <constraint firstAttribute="trailing" secondItem="MX1-SE-dMg" secondAttribute="trailing" constant="20" id="hsS-Wf-9ee"/>
+                                <constraint firstItem="pJE-wL-O57" firstAttribute="leading" secondItem="mbV-BO-wly" secondAttribute="leading" id="pyX-Qo-BQp"/>
+                                <constraint firstItem="lfu-Nd-poI" firstAttribute="leading" secondItem="mbV-BO-wly" secondAttribute="leading" constant="20" id="qqB-wx-1iP"/>
+                                <constraint firstAttribute="bottom" secondItem="lfu-Nd-poI" secondAttribute="bottom" id="rUR-4S-l0h"/>
+                                <constraint firstItem="AVc-wq-4WI" firstAttribute="centerY" secondItem="4FS-Rp-fQs" secondAttribute="centerY" id="t7K-rC-p16"/>
+                                <constraint firstItem="8Kt-eX-1ei" firstAttribute="top" secondItem="pJE-wL-O57" secondAttribute="bottom" id="yUf-NY-gVa"/>
+                                <constraint firstAttribute="trailing" secondItem="8Kt-eX-1ei" secondAttribute="trailing" constant="20" id="zIe-M4-mvq"/>
+                                <constraint firstItem="MX1-SE-dMg" firstAttribute="top" secondItem="8Kt-eX-1ei" secondAttribute="bottom" constant="20" id="zgm-E5-8pj"/>
+                            </constraints>
+                            <userDefinedRuntimeAttributes>
+                                <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
+                                    <integer key="value" value="15"/>
+                                </userDefinedRuntimeAttribute>
+                                <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                            </userDefinedRuntimeAttributes>
+                        </view>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="jTH-um-Pl3">
+                            <rect key="frame" x="0.0" y="492" width="382" height="55"/>
+                            <color key="backgroundColor" red="0.20000000000000001" green="0.52941176470588236" blue="0.93725490196078431" alpha="1" colorSpace="calibratedRGB"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="55" id="JwZ-dR-nuJ"/>
+                            </constraints>
+                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                            <state key="normal" title="立即支付">
+                                <color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            </state>
+                        </button>
+                    </subviews>
+                    <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+                    <constraints>
+                        <constraint firstItem="jTH-um-Pl3" firstAttribute="leading" secondItem="HQi-LA-dF0" secondAttribute="leading" id="2OV-5h-WNv"/>
+                        <constraint firstItem="mbV-BO-wly" firstAttribute="top" secondItem="HQi-LA-dF0" secondAttribute="top" id="C43-gH-aJi"/>
+                        <constraint firstItem="mbV-BO-wly" firstAttribute="leading" secondItem="HQi-LA-dF0" secondAttribute="leading" id="EvF-wv-25y"/>
+                        <constraint firstAttribute="height" constant="547" id="LDK-PI-6LW"/>
+                        <constraint firstAttribute="trailing" secondItem="jTH-um-Pl3" secondAttribute="trailing" id="XcH-SY-y7p"/>
+                        <constraint firstItem="jTH-um-Pl3" firstAttribute="top" secondItem="mbV-BO-wly" secondAttribute="bottom" id="j5q-Qh-Cg1"/>
+                        <constraint firstAttribute="trailing" secondItem="mbV-BO-wly" secondAttribute="trailing" id="mya-2b-aVl"/>
+                    </constraints>
+                    <userDefinedRuntimeAttributes>
+                        <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
+                            <integer key="value" value="15"/>
+                        </userDefinedRuntimeAttribute>
+                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                    </userDefinedRuntimeAttributes>
+                </view>
+            </subviews>
+            <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+            <constraints>
+                <constraint firstItem="Hwm-BA-YR7" firstAttribute="top" secondItem="vUN-kp-3ea" secondAttribute="top" id="5sV-d7-Ycq"/>
+                <constraint firstItem="vUN-kp-3ea" firstAttribute="trailing" secondItem="HQi-LA-dF0" secondAttribute="trailing" constant="16" id="AFk-YQ-hTk"/>
+                <constraint firstAttribute="bottom" secondItem="Hwm-BA-YR7" secondAttribute="bottom" id="Kn0-Mu-jRT"/>
+                <constraint firstItem="vUN-kp-3ea" firstAttribute="trailing" secondItem="Hwm-BA-YR7" secondAttribute="trailing" id="QJV-AT-5Sh"/>
+                <constraint firstItem="HQi-LA-dF0" firstAttribute="leading" secondItem="vUN-kp-3ea" secondAttribute="leading" constant="16" id="XMq-vR-T3b"/>
+                <constraint firstItem="HQi-LA-dF0" firstAttribute="centerY" secondItem="iN0-l3-epB" secondAttribute="centerY" id="wHg-Wh-NM9"/>
+                <constraint firstItem="Hwm-BA-YR7" firstAttribute="leading" secondItem="vUN-kp-3ea" secondAttribute="leading" id="xEH-BX-Ebr"/>
+            </constraints>
+            <viewLayoutGuide key="safeArea" id="vUN-kp-3ea"/>
+            <connections>
+                <outlet property="AlertView" destination="HQi-LA-dF0" id="dRy-4X-KRc"/>
+                <outlet property="alertCloseBtn" destination="fwH-9D-EqM" id="E50-Yk-Pq0"/>
+                <outlet property="disBtn" destination="Hwm-BA-YR7" id="3cR-aX-KrC"/>
+                <outlet property="payBtn" destination="jTH-um-Pl3" id="6tp-fY-qhU"/>
+                <outlet property="tableView" destination="MX1-SE-dMg" id="Xia-l5-P2p"/>
+            </connections>
+            <point key="canvasLocation" x="137.68115942028987" y="152.67857142857142"/>
+        </view>
+    </objects>
+    <resources>
+        <image name="Book_alert_close" width="12.5" height="12.5"/>
+        <image name="mine_book_icon" width="51.5" height="51.5"/>
+        <image name="mine_man_icon" width="51.5" height="51.5"/>
+        <image name="mine_net_icon" width="51.5" height="51.5"/>
+        <image name="mine_ting_icon" width="51.5" height="51.5"/>
+    </resources>
+</document>