From caf061a83ac3ffa451ecdeb66cad70148dcdeef2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E4=BA=91=E9=9C=84?= <chinacgcgcg@163.com> Date: Wed, 23 Nov 2016 16:20:22 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=A1=B9=E8=AF=B4=E6=98=8E?= =?UTF-8?q?=EF=BC=9A=E5=BE=AE=E4=BF=A1=E5=8D=A1=E5=8A=B5=E6=89=AB=E6=8F=8F?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E5=A4=84=E7=90=86=E3=80=81=E6=94=AF=E4=BB=98?= =?UTF-8?q?=E6=A1=86=E5=A2=9E=E5=8A=A0=E4=BB=B7=E6=A0=BC=E8=AE=A1=E7=AE=97?= =?UTF-8?q?=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Class/OrderdetailsViewController.m | 22 +++- Class/PromotionChooseViewController.m | 7 +- Class/SettlementViewController.m | 23 +++- Class/SettlementViewController.xib | 103 ++++++++++-------- .../question.imageset/Contents.json | 23 ++++ .../question.imageset/question.png | Bin 0 -> 606 bytes .../question.imageset/question@2x.png | Bin 0 -> 941 bytes .../question.imageset/question@3x.png | Bin 0 -> 1226 bytes Lighting/Info.plist | 2 +- Tools/BaseViewController.h | 10 ++ Tools/BaseViewController.m | 23 ++++ 11 files changed, 159 insertions(+), 54 deletions(-) create mode 100644 Lighting/Images.xcassets/question.imageset/Contents.json create mode 100644 Lighting/Images.xcassets/question.imageset/question.png create mode 100644 Lighting/Images.xcassets/question.imageset/question@2x.png create mode 100644 Lighting/Images.xcassets/question.imageset/question@3x.png diff --git a/Class/OrderdetailsViewController.m b/Class/OrderdetailsViewController.m index a18252a..1f928d3 100644 --- a/Class/OrderdetailsViewController.m +++ b/Class/OrderdetailsViewController.m @@ -84,6 +84,11 @@ NSString *const PROMOTIONALSTRING = @"促销信æ¯"; */ @property (nonatomic,strong) WeChatCardModel *weChatModel; +/** + 扫æå¾®ä¿¡å¡åŠµï¼ˆé‡è¯•) + */ +@property (nonatomic,strong) PromotionWeChatCardModel *tempWeChatModel; + @@ -517,6 +522,7 @@ NSString *const PROMOTIONALSTRING = @"促销信æ¯"; - (void)scanWeChatCardNumber:(PromotionWeChatCardModel *)weChatModel { WS(weakSelf); + self.tempWeChatModel = weChatModel; QRViewController *scanVC = [[QRViewController alloc] initWithScanCompleteHandler:^(NSString *url) { [weakSelf dismissViewControllerAnimated:YES completion:^{ weakSelf.weChatModel.wxcardNumber = url; @@ -529,6 +535,11 @@ NSString *const PROMOTIONALSTRING = @"促销信æ¯"; [weakSelf.promotionInformationArray removeObject:model];break; } } + if (!weakSelf.promotionInformationArray.count) { + if ([weakSelf.sectionTitle containsObject:@"促销信æ¯"]) { + [weakSelf.sectionTitle removeLastObject]; + } + } [weakSelf promotionInformationExecutionOrder]; }]; dispatch_async(dispatch_get_main_queue(), ^{ @@ -553,11 +564,16 @@ NSString *const PROMOTIONALSTRING = @"促销信æ¯"; weChatModel.total = weakSelf.weChatModel.wxcardDenomation;break; } } - [weakSelf SHOWPrompttext:@"微信å¡åŠµä½¿ç”¨æˆåŠŸ" ComcpleteBlock:nil]; + [weakSelf SHOWPrompttext:[NSString stringWithFormat:@"微信å¡åе(%ldå…ƒ)使用æˆåŠŸ",weakSelf.weChatModel.wxcardDenomation] ComcpleteBlock:^{ + [weakSelf promotionInformationExecutionOrder]; + }]; }else{ - [weakSelf ErrorMBProgressView:returnValue[@"msg"]]; + [weakSelf promptBoxWithMessage:[NSString stringWithFormat:@"微信å¡åŠµä½¿ç”¨å¤±è´¥:(%@),是å¦é‡è¯•?",returnValue[@"msg"]] cancelBlock:^{ + [weakSelf promotionInformationExecutionOrder]; + } sureBlock:^{ + [weakSelf scanWeChatCardNumber:weakSelf.tempWeChatModel]; + }]; } - [weakSelf promotionInformationExecutionOrder]; } WithErrorCodeBlock:^(id errorCodeValue) { [weakSelf RemoveMBProgressHUDLoding]; diff --git a/Class/PromotionChooseViewController.m b/Class/PromotionChooseViewController.m index 924a1f9..693a8b7 100644 --- a/Class/PromotionChooseViewController.m +++ b/Class/PromotionChooseViewController.m @@ -122,7 +122,12 @@ #pragma mark - 退出促销æ¡ä»¶é€‰æ‹© - (IBAction)dismissPromotionChooseNavigation:(UIBarButtonItem *)sender { - [self dismissViewControllerAnimated:YES completion:nil]; + + WS(weakSelf); + [self promptBoxWithMessage:@"é€€å‡ºåŽæ¤å•å°†ä¸åœ¨äº«å—促销" cancelBlock:^{ + } sureBlock:^{ + [weakSelf dismissViewControllerAnimated:YES completion:nil]; + }]; } #pragma mark - 确认促销æ¡ä»¶é€‰æ‹© diff --git a/Class/SettlementViewController.m b/Class/SettlementViewController.m index 1915371..3de5aa7 100644 --- a/Class/SettlementViewController.m +++ b/Class/SettlementViewController.m @@ -31,6 +31,11 @@ */ @property (nonatomic,strong) PayViewController *payController; +/** + æ€»é‡‘é¢æ¥æº + */ +@property (nonatomic,copy) NSString *totalAmountSource; + @end @@ -50,7 +55,7 @@ [super viewDidLoad]; [self uiConfigAction]; - [self setGoodsArray]; + [self calculateGoodsTotalAmountAndTotalNumber]; [self getPayQrCode]; } @@ -84,7 +89,7 @@ #pragma mark -支付总金é¢ï¼Œå•†å“æ€»æ•°é‡ -- (void)setGoodsArray +- (void)calculateGoodsTotalAmountAndTotalNumber { NSInteger goodsAllNumber = 0;//æ€»æ•°é‡ for (TOOrderdetailEntity *model in _goodsArray) { @@ -149,18 +154,22 @@ }]; //计算促销åŽçš„ä»·æ ¼ CGFloat newPrice = allPrice; + NSMutableString *priceString = [NSMutableString stringWithFormat:@"原价 %.2få…ƒ",allPrice]; for (NSDictionary *dict in chooseArray) { if ([dict isEqual:deductionPrice]) { CGFloat deduction = [dict[@"price"] floatValue]; newPrice = newPrice - deduction; + [priceString appendString:[NSString stringWithFormat:@" - 抵扣促销 %.2få…ƒ",deduction]]; }else if ([dict isEqual:weChatPrice]){ CGFloat weChat = [dict[@"price"] floatValue]; newPrice = newPrice - weChat; + [priceString appendString:[NSString stringWithFormat:@" - 微信å¡åе %.2få…ƒ",weChat]]; }else if ([dict isEqual:drawPrice]){ CGFloat draw = [self.resultModel.number floatValue]/100.0; newPrice = newPrice * draw; + [priceString appendString:[NSString stringWithFormat:@" X 转盘抽奖 %@",self.resultModel.descriptionString]]; } } //判æ–促销是å¦ä¸ºç©º @@ -168,7 +177,9 @@ if (newPrice < 0) { newPrice = 0; } + [priceString appendString:[NSString stringWithFormat:@" = %.2få…ƒ",newPrice]]; } + self.totalAmountSource = priceString; return newPrice; } @@ -527,10 +538,12 @@ self.myScrollView.contentOffset = CGPointMake(0, 0); } -- (void)didReceiveMemoryWarning { - [super didReceiveMemoryWarning]; - // Dispose of any resources that can be recreated. +#pragma mark - ä»·æ ¼ç–‘é—® +- (IBAction)priceQuestionButtonClickAction:(UIButton *)sender { + [self promptCustomerTitle:@"我知é“了" withMessage:self.totalAmountSource finish:nil]; } + + @end diff --git a/Class/SettlementViewController.xib b/Class/SettlementViewController.xib index 67d7a18..d7913bd 100644 --- a/Class/SettlementViewController.xib +++ b/Class/SettlementViewController.xib @@ -1,7 +1,8 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<document type="com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB" version="3.0" toolsVersion="10116" systemVersion="15F34" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none"> +<?xml version="1.0" encoding="UTF-8"?> +<document type="com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB" version="3.0" toolsVersion="11201" systemVersion="16B2555" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" colorMatched="YES"> <dependencies> - <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="10085"/> + <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="11161"/> + <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> </dependencies> <objects> <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="SettlementViewController"> @@ -29,18 +30,18 @@ <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> <subviews> <scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" id="Zin-kL-ulL"> - <rect key="frame" x="0.0" y="0.0" width="380" height="500"/> + <frame key="frameInset" width="380" height="500"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <subviews> <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="BtK-gu-0KG"> <rect key="frame" x="93" y="140" width="160" height="30"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <color key="backgroundColor" red="0.93333333333333335" green="0.93333333333333335" blue="0.93333333333333335" alpha="1" colorSpace="calibratedRGB"/> + <color key="backgroundColor" red="0.93333333333333335" green="0.93333333333333335" blue="0.93333333333333335" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <fontDescription key="fontDescription" type="system" pointSize="10"/> <inset key="titleEdgeInsets" minX="-50" minY="0.0" maxX="0.0" maxY="0.0"/> <inset key="imageEdgeInsets" minX="120" minY="6" maxX="0.0" maxY="5"/> <state key="normal" title="çŽ°é‡‘ã€æ”¯ç¥¨ã€è½¬è´¦ã€åˆ·å¡" image="down_arr"> - <color key="titleColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> + <color key="titleColor" red="0.66666666666666663" green="0.66666666666666663" blue="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> </state> <connections> <action selector="payTypeButtonClick:" destination="-1" eventType="touchUpInside" id="i6M-fm-Kha"/> @@ -48,11 +49,11 @@ </button> <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" id="vDt-el-S5r"> <rect key="frame" x="25" y="445" width="130" height="35"/> - <autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxY="YES"/> - <color key="backgroundColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> + <color key="backgroundColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <fontDescription key="fontDescription" type="system" pointSize="16"/> <state key="normal" title="å–æ¶ˆ"> - <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> + <color key="titleColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> </state> <connections> <action selector="CancelButtonClick:" destination="-1" eventType="touchUpInside" id="6As-mE-5Ro"/> @@ -60,11 +61,11 @@ </button> <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" id="wNR-jl-cxy"> <rect key="frame" x="203" y="445" width="130" height="35"/> - <autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxY="YES"/> - <color key="backgroundColor" red="0.34901960784313724" green="0.67450980392156867" blue="0.86274509803921573" alpha="1" colorSpace="calibratedRGB"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> + <color key="backgroundColor" red="0.34901960784313724" green="0.67450980392156867" blue="0.86274509803921573" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <fontDescription key="fontDescription" type="system" pointSize="16"/> <state key="normal" title="确认"> - <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> + <color key="titleColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> </state> <connections> <action selector="SureButtonClick:" destination="-1" eventType="touchUpInside" id="tue-Vx-ZkB"/> @@ -74,18 +75,18 @@ <rect key="frame" x="25" y="331" width="58" height="21"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <fontDescription key="fontDescription" type="system" pointSize="12"/> - <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/> + <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <nil key="highlightedColor"/> </label> <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="h52-sh-k1p"> <rect key="frame" x="93" y="327" width="160" height="30"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <color key="backgroundColor" red="0.93333333330000001" green="0.93333333330000001" blue="0.93333333330000001" alpha="1" colorSpace="calibratedRGB"/> + <color key="backgroundColor" red="0.93333333330000001" green="0.93333333330000001" blue="0.93333333330000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <fontDescription key="fontDescription" type="system" pointSize="12"/> <inset key="titleEdgeInsets" minX="-50" minY="0.0" maxX="50" maxY="0.0"/> <inset key="imageEdgeInsets" minX="120" minY="6" maxX="0.0" maxY="5"/> <state key="normal" title="个人å‘票" image="down_arr"> - <color key="titleColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> + <color key="titleColor" red="0.66666666666666663" green="0.66666666666666663" blue="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> </state> <connections> <action selector="invoiceTypeButtonClick:" destination="-1" eventType="touchUpInside" id="glI-Tn-twP"/> @@ -94,12 +95,12 @@ <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="RrC-9S-Ofh"> <rect key="frame" x="93" y="283" width="160" height="30"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <color key="backgroundColor" red="0.93333333330000001" green="0.93333333330000001" blue="0.93333333330000001" alpha="1" colorSpace="calibratedRGB"/> + <color key="backgroundColor" red="0.93333333330000001" green="0.93333333330000001" blue="0.93333333330000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <fontDescription key="fontDescription" type="system" pointSize="12"/> <inset key="titleEdgeInsets" minX="-50" minY="0.0" maxX="86" maxY="0.0"/> <inset key="imageEdgeInsets" minX="120" minY="6" maxX="0.0" maxY="5"/> <state key="normal" title="å¦" image="down_arr"> - <color key="titleColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> + <color key="titleColor" red="0.66666666666666663" green="0.66666666666666663" blue="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> </state> <connections> <action selector="isinvoiceButtonClick:" destination="-1" eventType="touchUpInside" id="6wf-TG-crT"/> @@ -109,7 +110,7 @@ <rect key="frame" x="25" y="287" width="58" height="21"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <fontDescription key="fontDescription" type="system" pointSize="12"/> - <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/> + <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <nil key="highlightedColor"/> </label> <view contentMode="scaleToFill" id="beF-Oa-HVo"> @@ -117,28 +118,28 @@ <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <subviews> <textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" textAlignment="natural" minimumFontSize="17" id="nrc-w9-AuC"> - <rect key="frame" x="10" y="0.0" width="240" height="30"/> + <frame key="frameInset" minX="10" width="240" height="30"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> + <color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="0.0" colorSpace="custom" customColorSpace="sRGB"/> <fontDescription key="fontDescription" type="system" pointSize="14"/> <textInputTraits key="textInputTraits"/> </textField> </subviews> - <color key="backgroundColor" red="0.93333333330000001" green="0.93333333330000001" blue="0.93333333330000001" alpha="1" colorSpace="calibratedRGB"/> + <color key="backgroundColor" red="0.93333333330000001" green="0.93333333330000001" blue="0.93333333330000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> </view> <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="å‘票抬头:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="58b-Vg-zBQ"> <rect key="frame" x="25" y="376" width="58" height="21"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <fontDescription key="fontDescription" type="system" pointSize="12"/> - <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/> + <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <nil key="highlightedColor"/> </label> <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="u1Q-iA-oUv"> <rect key="frame" x="93" y="219" width="160" height="30"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> + <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <state key="normal" backgroundImage="图层-1"> - <color key="titleColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> + <color key="titleColor" red="0.66666666666666663" green="0.66666666666666663" blue="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> </state> <state key="selected" backgroundImage="图层-3"/> <connections> @@ -148,9 +149,9 @@ <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="pfa-IW-8J9"> <rect key="frame" x="93" y="180" width="160" height="30"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> + <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <state key="normal" backgroundImage="weixinselected"> - <color key="titleColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> + <color key="titleColor" red="0.66666666666666663" green="0.66666666666666663" blue="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> </state> <state key="selected" backgroundImage="weixin"/> <connections> @@ -161,7 +162,7 @@ <rect key="frame" x="25" y="144" width="58" height="21"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <fontDescription key="fontDescription" type="system" pointSize="12"/> - <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/> + <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <nil key="highlightedColor"/> </label> <view contentMode="scaleToFill" id="kRj-KI-B8x"> @@ -169,20 +170,20 @@ <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <subviews> <textField opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" textAlignment="natural" minimumFontSize="17" id="Wku-Nz-Jvr"> - <rect key="frame" x="10" y="0.0" width="150" height="30"/> + <frame key="frameInset" minX="10" width="150" height="30"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> + <color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="0.0" colorSpace="custom" customColorSpace="sRGB"/> <fontDescription key="fontDescription" type="system" pointSize="14"/> <textInputTraits key="textInputTraits"/> </textField> </subviews> - <color key="backgroundColor" red="0.93333333330000001" green="0.93333333330000001" blue="0.93333333330000001" alpha="1" colorSpace="calibratedRGB"/> + <color key="backgroundColor" red="0.93333333330000001" green="0.93333333330000001" blue="0.93333333330000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> </view> <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="总金é¢:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Bjc-Ns-VND"> <rect key="frame" x="25" y="103" width="50" height="21"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <fontDescription key="fontDescription" type="system" pointSize="12"/> - <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/> + <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <nil key="highlightedColor"/> </label> <view contentMode="scaleToFill" id="V10-sC-tjf"> @@ -190,20 +191,20 @@ <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <subviews> <textField opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" textAlignment="natural" minimumFontSize="17" id="kfb-PC-RSU"> - <rect key="frame" x="10" y="1" width="150" height="30"/> + <frame key="frameInset" minX="10" minY="1" width="150" height="30"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> + <color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="0.0" colorSpace="custom" customColorSpace="sRGB"/> <fontDescription key="fontDescription" type="system" pointSize="14"/> <textInputTraits key="textInputTraits"/> </textField> </subviews> - <color key="backgroundColor" red="0.93333333330000001" green="0.93333333330000001" blue="0.93333333330000001" alpha="1" colorSpace="calibratedRGB"/> + <color key="backgroundColor" red="0.93333333330000001" green="0.93333333330000001" blue="0.93333333330000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> </view> <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="总数é‡:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="KHc-WJ-xQd"> <rect key="frame" x="25" y="64" width="50" height="21"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <fontDescription key="fontDescription" type="system" pointSize="12"/> - <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/> + <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <nil key="highlightedColor"/> </label> <view contentMode="scaleToFill" id="JWa-n5-tJQ"> @@ -211,28 +212,42 @@ <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/> <subviews> <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="结算信æ¯" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="SoB-nK-luK"> - <rect key="frame" x="8" y="13" width="150" height="21"/> + <frame key="frameInset" minX="8" minY="13" width="150" height="21"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <fontDescription key="fontDescription" type="system" pointSize="14"/> - <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/> + <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <nil key="highlightedColor"/> </label> </subviews> - <color key="backgroundColor" red="0.95686274510000002" green="0.95686274510000002" blue="0.95686274510000002" alpha="1" colorSpace="calibratedRGB"/> + <color key="backgroundColor" red="0.95686274510000002" green="0.95686274510000002" blue="0.95686274510000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> </view> + <button opaque="NO" contentMode="scaleToFill" misplaced="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" id="uWZ-vV-OOs"> + <rect key="frame" x="257" y="98" width="30" height="30"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> + <state key="normal" backgroundImage="question"/> + <connections> + <action selector="priceQuestionButtonClickAction:" destination="-1" eventType="touchUpInside" id="tYn-0Q-zMk"/> + </connections> + </button> </subviews> </scrollView> </subviews> - <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> + <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/> <point key="canvasLocation" x="521" y="319"/> </view> </objects> <resources> - <image name="down_arr" width="22" height="12"/> - <image name="weixin" width="175" height="30"/> - <image name="weixinselected" width="175" height="30"/> - <image name="图层-1" width="175" height="30"/> - <image name="图层-3" width="175" height="30"/> + <image name="down_arr" width="16" height="9"/> + <image name="question" width="24" height="24"/> + <image name="weixin" width="174" height="30"/> + <image name="weixinselected" width="174" height="30"/> + <image name="图层-1" width="174" height="30"/> + <image name="图层-3" width="174" height="30"/> </resources> + <simulatedMetricsContainer key="defaultSimulatedMetrics"> + <simulatedStatusBarMetrics key="statusBar"/> + <simulatedOrientationMetrics key="orientation" orientation="landscapeRight"/> + <simulatedScreenMetrics key="destination"/> + </simulatedMetricsContainer> </document> diff --git a/Lighting/Images.xcassets/question.imageset/Contents.json b/Lighting/Images.xcassets/question.imageset/Contents.json new file mode 100644 index 0000000..ef49847 --- /dev/null +++ b/Lighting/Images.xcassets/question.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "question.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "question@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "question@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/Lighting/Images.xcassets/question.imageset/question.png b/Lighting/Images.xcassets/question.imageset/question.png new file mode 100644 index 0000000000000000000000000000000000000000..96f5ae4a3c1b326fe1ec35423fa6cfd9a88a6348 GIT binary patch literal 606 zcmV-k0-^nhP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80006dNkl<ZScUCZ z!IA1P40Q>VKnZlPbnrP^zHB;JI#@bbIv{5(Pv`(TfHRiI>40>=9^x=w)^?nP)6UmS zPLcFvS$dKg`!53okX9UN2S`Uix&hMNeMdm51ey<C+4)OBi^|TpGM|8S<46agsNhmB zeH~ueIUub7X$wd-ARWd2x|j^^oZbMbEGj$8wG)a8K&nCNuOW6nok+a_)R!qI0i+Vp zoCgQdrcz%<NAF3Ojci}7K^}N+c0idmpgH#{x?-whmCU7H0#fBwfA`%u(k>McAeBPu zO*+zqQhT2dz=k6ogwz{QbONNN`zI6?A^W1Tv*cBDr;mWIJn&x~(c0=ur}NyVowS8b zWiS9C^(KD$hx6zO+zHzNkPbr+$x<x`icT)o+n}+phja%;r>IU02auYS^FDDI=;*nO z=>;<__SZ!!>O63BeiUe89)L3IUjcBbmtzAE`|ARbYzN-Q4MD820XUX(-JvfzlQ4)i z<_a7sMO!l_!7E^FcoBNUR1dL>w)@b@=W#=_HM4P2L=<%7xFJTpAxRQZ^5=^rNyUt1 zPAtzESLQP}1HHqDvHo%V6zsi^c7OPG)3aAGcOl8053R0Q4{GyvB^$BJ1!V9__AqP< zrk=i(PS`EoBGPcA-H5f^0@8MJ7K_TxTs9iF55B`*zxg`6vU4HzKalzhkSr)Vz2sr? sEG{FZE56$A1den7W!5i$n*DkC23Q1MW%>KHg8%>k07*qoM6N<$f>SjMRsaA1 literal 0 HcmV?d00001 diff --git a/Lighting/Images.xcassets/question.imageset/question@2x.png b/Lighting/Images.xcassets/question.imageset/question@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fb78440a6b432bbe4b730abdeb942a06d1f07903 GIT binary patch literal 941 zcmV;e15*5nP)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm000AYNkl<ZXo2ln z&z15Z5T^u7umn5Ul#rW)7wtehSUcG5K+iJS*nxK7-kCh?Aa=0dArMJ?21ro9gYzCY z80IhYn}M-6z3KG?xf*k%IUsES>A;anj`U|QKso@@h9k`(SL0X9%ot;gBh9&xCri*X z7xD-~u5TCZ0p)MKSIE;8i)EUt(bEN=VzC4yRasX4LPiT;tERacK}HJ@wAad%kQJX# zQDnALliK2yrIR82AXj6fh&D(XNz_}KVzD$~GF0$3fshFo@~92-6_a;$L6v-eAZY(c zR|C>kdt(!msTN+YqcQEeFQbKdwFWceNZ%ak4>DQ|7tNn6CHi}UBc**UKijDZ|4|?O zM}5q8YSQO^qXZYlD)?}ks}V;kxsXTS{ZlNKt(wqWLY}ygUm-=T&WX^%2S{5Gbn!W; zU#FYO+qs1N@_7ujA<seipkaYm=$Hg=tuqL@u8NgRxF}Xu(Q0_aM+qyG6F&vC^<B*C z7&TZ&(4{NcXFD}%K#6MQJ~DZGLA%V?`l_jb+d?KJLeCjvIUj`j`Eta*ajRwhy-SGp z9hL%X*O@d|BM@}qNZ;MeHDYuzH1)w+-WbN@n3W4huXBR-T*#A4u+pierphWZ0U?tR zcmYBtp&nrD>bbjjS(bSmB4mtlq&zeS7`rNdcfZ-tw{m(3krkiKF3laTHg#5J<Dw{% zwkXZjs9iIB3#Cn+AqPUPAE7{_39>BT$I~F_@>B(MSeETqr*BWek;?lDL=K_ZPEFeI zVQ5d`3ZZC8T%%cA_y|2kcM?Z@M%&f47p8CXbUmZhCXaIMby*XA4&}!fV_X!g&O%mS z>?+q@m+1*Z090_17tHYmb1sUlfR$6-(GdctpGn?unz6bMEnhOTyhDJbygeDxQr;so zkua+-AI5sLl#E@y&^H&_1*{Jb#%c`ZZ~ewWL6^SMu~-V!Q^7ul<O2p<F%%dy*s=ua zHCi;CnpvUuTBF5n=-FFlW;*ty`RLX1aSC9?)Eav~biA%RwkVcwlffcf$W!bOj%w&d zhldwYd%6Zlo1u^cay7PE&FDWrcS(EWY&^mPzD_k<nVac^X%k;k`5~i)J?{i01xN?T ziqH1qNV(k`1Ik}6iq(GsSs+*AN*UT#zn64r*8(o&5s<baU$Sp{(-Y_)@mIoRS3-*i P00000NkvXXu0mjfu_&)( literal 0 HcmV?d00001 diff --git a/Lighting/Images.xcassets/question.imageset/question@3x.png b/Lighting/Images.xcassets/question.imageset/question@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..599ef1a3a228817c45b5300e7b58863dee9d9836 GIT binary patch literal 1226 zcmV;*1U37KP)<h;3K|Lk000e1NJLTq002M$002M;1^@s6s%dfF000D$Nkl<Zc%1E9 z&2{QJ5OxWaKnZjZcW}L9#3tz=bPzfS9fUO+;@bi4fb2Csq64P`zXg&bj2)~$@O_8x z9PKQPH2*V_ljMO19(W)kAeU2y^bEW54UqPLBpFhDF}OGY(jIo@+nkF(SuQ8{-n%mv zTRCG~y!Re<=-}co$MO|&IlcFp27w_x1Jb^AkRu>%U`H>&McOCXESD4DB4xZ>0@8*d z9nEzBX%AeaH$KuZ02gUX+DG7G<tw?xR?ZmG8aREMj96^tEYQ~dpzJ$0RJMQ}y+on4 zqn9(S;NtzReu5!o45`u*XGqyi=<;%@H3E?2U9^F5@ouQ(=GKzPayemK6wMwYX<a7( z>4PEF!0G#@guC{_#Y!__j^%57g2v&;;)qVsMVSN_t9XP)czBJ)R?ZqG#L!B{%jH-P zuK`@7jZX-fFQ`~tGo(7i;n}BrYL8Hvo(h#UL#l!}<}8<!Cc)w5(q)asR?YzFgK=@V zlKNJFwD(PYRTfzT(%yBApT)G7<)Uzyn+`a1?*OC^7b#}Boaltf%O9vL@3a|9iI{nU z=crr~EW;nTn?j>XmZ3#Qiyo<N7*eKv$$0@JzIx|5ND?^xbq<YM`oQVihJ%I^Y8_mB z4bdWol$nK(Icy!Up~3cAz>wCq+*7t!bsgSj17=Kbm%~<vNRmXS%hnpCJ-?0Z>s;Y% z)0P_4&^Kbbj~1wc&5n6Llf;)5v2KsQwppXKUUA7#dwXs&#G%5}>TetOLrBboS?KsM zpfTs6W}qc$v-vES6V>us0T(OAMd6Y=m<Y%KZ3dg66Kde}ZA&OLI(mz>OHQDia}7xH zI#KO>Jf-K0E+^>fP*3Zf{J_-@wYvB?FJGwQ>oS~r)cQ?0yjCS@yNlXb_yz2|&v=$g zc&@u1Jp=mc2irud3x-4e-G>+qNPP&}Ks7i!tHuzAPZA5k-kJe@_8!^~xiH}O4+Egz z*@f>myO_W#<OVM2oGP_WXBVUAIM@l^DhzfdIic*m3pQaedLm?YnnENwL!h;7=*Klf zs-kVCvuuuMayk`eNXJ1FbZaVB|G%fqO=HkX61QT=sT>}>p$-PbpwrN^E{C-v<l+!z zL$_x@#cUcPYSPhq(m<Gf13g01&@hBq*iN)=ijEOF+}bxqeOk&Rfop63X935Hk+FcO zw@c3Z_qiIova!pmFEEpJLg$@eHMK#An^uL`3@~rBy^AXIrZrSv5Sszb-DIeAKKKKP zhz!tolfi2XBY&@anb6Jw)JT2z810EnLqJ7^5KIUSv$+!W>E0Nbpwzy)S;#h-aQBCj zyYj8^C6S7^PBaxGy1(V|0pxOOc9rfT2zLIO!|5%L3+7n98vVrMT}=^kIn{4*bP3In zo@3Brr=KyT5kA+WsZ&%4IvQpnVOPEd`C;O8V^kSTF2>@3F917wX}|UYB&o8qXZ9(d ze*0yHeafdfmal;Haq+(q7sY6QnQ24+>cU$8{n!pb@x^$#{AYfe>H_3)s=Gj{9oET| o(_uxS3b1T6_Wi&E5B#t3AGL4stE;C9fB*mh07*qoM6N<$f~Aa5C;$Ke literal 0 HcmV?d00001 diff --git a/Lighting/Info.plist b/Lighting/Info.plist index a821b5e..306f539 100644 --- a/Lighting/Info.plist +++ b/Lighting/Info.plist @@ -15,7 +15,7 @@ <key>CFBundleName</key> <string>欧立方</string> <key>CFBundleShortVersionString</key> - <string>1.2.5</string> + <string>1.2.6</string> <key>CFBundleURLTypes</key> <array> <dict> diff --git a/Tools/BaseViewController.h b/Tools/BaseViewController.h index 29bab4c..a1ae71a 100644 --- a/Tools/BaseViewController.h +++ b/Tools/BaseViewController.h @@ -143,5 +143,15 @@ */ + (BOOL)isBlankString:(NSString *)string; +/** + 选择框 + + @param message 文本 + @param cancel å–æ¶ˆ + @param sure 确认 + */ +- (void)promptBoxWithMessage:(NSString *)message cancelBlock:(void(^)())cancel sureBlock:(void(^)())sure; + + @end diff --git a/Tools/BaseViewController.m b/Tools/BaseViewController.m index 1e3243c..1f3fcec 100644 --- a/Tools/BaseViewController.m +++ b/Tools/BaseViewController.m @@ -531,6 +531,29 @@ return NO; } +/** + 选择框 + + @param message 文本 + @param cancel å–æ¶ˆ + @param sure 确认 + */ +- (void)promptBoxWithMessage:(NSString *)message cancelBlock:(void(^)())cancel sureBlock:(void(^)())sure +{ + UIAlertController *alertVC = [UIAlertController alertControllerWithTitle:@"æç¤º" message:message preferredStyle:UIAlertControllerStyleAlert]; + [alertVC addAction:[UIAlertAction actionWithTitle:@"å–æ¶ˆ" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) { + if (cancel) { + cancel(); + } + }]]; + [alertVC addAction:[UIAlertAction actionWithTitle:@"确认" style:UIAlertActionStyleDestructive handler:^(UIAlertAction * _Nonnull action) { + if (sure) { + sure(); + } + }]]; + [self presentViewController:alertVC animated:YES completion:nil]; +} + - (void)dealloc { -- 2.18.1