Commit 6d6daa91 authored by lujunye's avatar lujunye

首页,绑定支付账号页面完成

parent 02cbef0a
...@@ -19,6 +19,8 @@ ...@@ -19,6 +19,8 @@
E01C26B62446AF3100ADCC70 /* DemoViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E01C26B42446AF3100ADCC70 /* DemoViewController.swift */; }; E01C26B62446AF3100ADCC70 /* DemoViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E01C26B42446AF3100ADCC70 /* DemoViewController.swift */; };
E01C26B72446AF3100ADCC70 /* DemoViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = E01C26B52446AF3100ADCC70 /* DemoViewController.xib */; }; E01C26B72446AF3100ADCC70 /* DemoViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = E01C26B52446AF3100ADCC70 /* DemoViewController.xib */; };
E088CC8D24470BF0000DAA8A /* CodeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E088CC8C24470BF0000DAA8A /* CodeView.swift */; }; E088CC8D24470BF0000DAA8A /* CodeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E088CC8C24470BF0000DAA8A /* CodeView.swift */; };
E088CC932447124D000DAA8A /* BindViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E088CC912447124D000DAA8A /* BindViewController.swift */; };
E088CC942447124D000DAA8A /* BindViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = E088CC922447124D000DAA8A /* BindViewController.xib */; };
E09B03A12445AF7100211A51 /* Define.swift in Sources */ = {isa = PBXBuildFile; fileRef = E09B03A02445AF7100211A51 /* Define.swift */; }; E09B03A12445AF7100211A51 /* Define.swift in Sources */ = {isa = PBXBuildFile; fileRef = E09B03A02445AF7100211A51 /* Define.swift */; };
E09B03A32445AF9500211A51 /* NetworkRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = E09B03A22445AF9500211A51 /* NetworkRequest.swift */; }; E09B03A32445AF9500211A51 /* NetworkRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = E09B03A22445AF9500211A51 /* NetworkRequest.swift */; };
E09B03A72445B04E00211A51 /* BaseViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E09B03A52445B04D00211A51 /* BaseViewController.swift */; }; E09B03A72445B04E00211A51 /* BaseViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E09B03A52445B04D00211A51 /* BaseViewController.swift */; };
...@@ -72,6 +74,8 @@ ...@@ -72,6 +74,8 @@
E01C26B52446AF3100ADCC70 /* DemoViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = DemoViewController.xib; sourceTree = "<group>"; }; E01C26B52446AF3100ADCC70 /* DemoViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = DemoViewController.xib; sourceTree = "<group>"; };
E01C26BA2446D68500ADCC70 /* Bridge_Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Bridge_Header.h; sourceTree = "<group>"; }; E01C26BA2446D68500ADCC70 /* Bridge_Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Bridge_Header.h; sourceTree = "<group>"; };
E088CC8C24470BF0000DAA8A /* CodeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CodeView.swift; sourceTree = "<group>"; }; E088CC8C24470BF0000DAA8A /* CodeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CodeView.swift; sourceTree = "<group>"; };
E088CC912447124D000DAA8A /* BindViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BindViewController.swift; sourceTree = "<group>"; };
E088CC922447124D000DAA8A /* BindViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = BindViewController.xib; sourceTree = "<group>"; };
E09B03A02445AF7100211A51 /* Define.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Define.swift; sourceTree = "<group>"; }; E09B03A02445AF7100211A51 /* Define.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Define.swift; sourceTree = "<group>"; };
E09B03A22445AF9500211A51 /* NetworkRequest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NetworkRequest.swift; sourceTree = "<group>"; }; E09B03A22445AF9500211A51 /* NetworkRequest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NetworkRequest.swift; sourceTree = "<group>"; };
E09B03A52445B04D00211A51 /* BaseViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BaseViewController.swift; sourceTree = "<group>"; }; E09B03A52445B04D00211A51 /* BaseViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BaseViewController.swift; sourceTree = "<group>"; };
...@@ -222,6 +226,15 @@ ...@@ -222,6 +226,15 @@
path = "验证码"; path = "验证码";
sourceTree = "<group>"; sourceTree = "<group>";
}; };
E088CC8E24470F84000DAA8A /* 换绑支付账号 */ = {
isa = PBXGroup;
children = (
E088CC912447124D000DAA8A /* BindViewController.swift */,
E088CC922447124D000DAA8A /* BindViewController.xib */,
);
path = "换绑支付账号";
sourceTree = "<group>";
};
E09B039E2445AEF800211A51 /* Appdelegate */ = { E09B039E2445AEF800211A51 /* Appdelegate */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
...@@ -271,6 +284,7 @@ ...@@ -271,6 +284,7 @@
E09B03AD2445B0BA00211A51 /* ViewController */ = { E09B03AD2445B0BA00211A51 /* ViewController */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
E088CC8E24470F84000DAA8A /* 换绑支付账号 */,
E09B03BD2445B95000211A51 /* 忘记密码 */, E09B03BD2445B95000211A51 /* 忘记密码 */,
E09B03AE2445B0C600211A51 /* 登录 */, E09B03AE2445B0C600211A51 /* 登录 */,
); );
...@@ -420,6 +434,7 @@ ...@@ -420,6 +434,7 @@
E09B03B72445B85A00211A51 /* LoginViewController.xib in Resources */, E09B03B72445B85A00211A51 /* LoginViewController.xib in Resources */,
E09B03C12445B96500211A51 /* FgPassViewController.xib in Resources */, E09B03C12445B96500211A51 /* FgPassViewController.xib in Resources */,
E01C26B72446AF3100ADCC70 /* DemoViewController.xib in Resources */, E01C26B72446AF3100ADCC70 /* DemoViewController.xib in Resources */,
E088CC942447124D000DAA8A /* BindViewController.xib in Resources */,
E00D85EB244561FE00F5F816 /* LaunchScreen.storyboard in Resources */, E00D85EB244561FE00F5F816 /* LaunchScreen.storyboard in Resources */,
E01C26B12446989700ADCC70 /* Interface_Z.plist in Resources */, E01C26B12446989700ADCC70 /* Interface_Z.plist in Resources */,
E00D85E8244561FE00F5F816 /* Preview Assets.xcassets in Resources */, E00D85E8244561FE00F5F816 /* Preview Assets.xcassets in Resources */,
...@@ -503,6 +518,7 @@ ...@@ -503,6 +518,7 @@
E01C26B62446AF3100ADCC70 /* DemoViewController.swift in Sources */, E01C26B62446AF3100ADCC70 /* DemoViewController.swift in Sources */,
E09B03A32445AF9500211A51 /* NetworkRequest.swift in Sources */, E09B03A32445AF9500211A51 /* NetworkRequest.swift in Sources */,
E09B03A72445B04E00211A51 /* BaseViewController.swift in Sources */, E09B03A72445B04E00211A51 /* BaseViewController.swift in Sources */,
E088CC932447124D000DAA8A /* BindViewController.swift in Sources */,
E088CC8D24470BF0000DAA8A /* CodeView.swift in Sources */, E088CC8D24470BF0000DAA8A /* CodeView.swift in Sources */,
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
......
{
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "banner@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "banner@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "guanbi@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "guanbi@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "xianshi @2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "xianshi @3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.949",
"alpha" : "1.000",
"blue" : "0.949",
"green" : "0.949"
}
}
}
]
}
\ No newline at end of file
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "0.929",
"alpha" : "1.000",
"blue" : "0.929",
"green" : "0.929"
}
}
}
]
}
\ No newline at end of file
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "srgb",
"components" : {
"red" : "1.000",
"alpha" : "1.000",
"blue" : "1.000",
"green" : "1.000"
}
}
}
]
}
\ No newline at end of file
...@@ -26,6 +26,7 @@ class BaseViewController: UIViewController { ...@@ -26,6 +26,7 @@ class BaseViewController: UIViewController {
if IsOldIos() { if IsOldIos() {
self.automaticallyAdjustsScrollViewInsets = false; self.automaticallyAdjustsScrollViewInsets = false;
} }
self.view.backgroundColor = UIColor(named: "app底色")
// Do any additional setup after loading the view. // Do any additional setup after loading the view.
} }
......
...@@ -57,7 +57,7 @@ class BaseModel: Mappable { ...@@ -57,7 +57,7 @@ class BaseModel: Mappable {
var code:Int? var code:Int?
var message : String? var message : String?
var data : Any? var data : Any?
required init?( map: Map) { required init?( map: Map) {
} }
...@@ -76,14 +76,14 @@ class NetworkRequest { ...@@ -76,14 +76,14 @@ class NetworkRequest {
//处理更细分的错误情况,错误类型须遵从Error协议 //处理更细分的错误情况,错误类型须遵从Error协议
enum DogError : Error{ enum DogError : Error{
case DataInvalidError case DataInvalidError
} }
extension NetworkRequest { extension NetworkRequest {
//MARK: - GET 请求 //MARK: - GET 请求
// let tools : NetworkRequest.shareInstance! // let tools : NetworkRequest.shareInstance!
//MARK: - POST 请求 //MARK: - POST 请求
func postRequest<T:BaseMappable>(_ url:String,_ params:[String:Any],_ type:(_ t:DataResponse<T>)->(),success:@escaping (_ res:Any)->(),failture:@escaping(_ error:Error)->()){ func postRequest<T:BaseMappable>(_ url:String,_ params:[String:Any],_ type:(_ t:DataResponse<T>)->(),success:@escaping (_ res:Any)->(),failture:@escaping(_ error:Error)->()){
let paths = Bundle.main.path(forResource: "Interface_Z", ofType: "plist") let paths = Bundle.main.path(forResource: "Interface_Z", ofType: "plist")
let dic = NSDictionary (contentsOfFile: (paths! as String)) let dic = NSDictionary (contentsOfFile: (paths! as String))
...@@ -96,7 +96,7 @@ extension NetworkRequest { ...@@ -96,7 +96,7 @@ extension NetworkRequest {
print(params) print(params)
var request = URLRequest(url: URL(string: allUrl)!) var request = URLRequest(url: URL(string: allUrl)!)
request.httpMethod = "POST" request.httpMethod = "POST"
request.setValue("application/json", forHTTPHeaderField: "Content-Type") request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.addValue("IOS",forHTTPHeaderField:"CLIENT_TYPE") request.addValue("IOS",forHTTPHeaderField:"CLIENT_TYPE")
...@@ -105,7 +105,7 @@ extension NetworkRequest { ...@@ -105,7 +105,7 @@ extension NetworkRequest {
request.addValue("\(ver!)",forHTTPHeaderField:"CLIENT_VERSION") request.addValue("\(ver!)",forHTTPHeaderField:"CLIENT_VERSION")
request.timeoutInterval = 10 request.timeoutInterval = 10
request.httpBody = try! JSONSerialization.data(withJSONObject: params, options: []) request.httpBody = try! JSONSerialization.data(withJSONObject: params, options: [])
Alamofire.request(request).responseJSON { (response) in Alamofire.request(request).responseJSON { (response) in
switch response.result { switch response.result {
...@@ -115,31 +115,27 @@ extension NetworkRequest { ...@@ -115,31 +115,27 @@ extension NetworkRequest {
SwiftNotice.clear() SwiftNotice.clear()
if json["code"].intValue == 200 { if json["code"].intValue == 200 {
success(Mapper<T>().map(JSONObject: value)) success(Mapper<T>().map(JSONObject: value))
}else if json["code"].intValue == 999 { }else if json["code"].intValue == 999 {
print("uid错误") print("uid错误")
// let alt = UIAlertView(title: "提示", message: json["message"].stringValue, delegate: nil, cancelButtonTitle: "确定") SwiftNotice.showText(json["message"].stringValue)
// alt.show()
failture(DogError.DataInvalidError) failture(DogError.DataInvalidError)
}else{ }else{
SwiftNotice.showText(json["message"].stringValue)
// let alt = UIAlertView(title: "提示", message: json["message"].stringValue, delegate: nil, cancelButtonTitle: "确定")
// alt.show()
failture(DogError.DataInvalidError) failture(DogError.DataInvalidError)
} }
case .failure(let error): case .failure(let error):
SwiftNotice.clear() SwiftNotice.clear()
//
// let alt = UIAlertView(title: "提示", message: "网络错误", delegate: nil, cancelButtonTitle: "确定")
// alt.show()
failture(error) failture(error)
print("error:\(error)") print("error:\(error)")
} }
} }
} }
//MARK: - 照片上传 //MARK: - 照片上传
func uploadImage(url:String,image: UIImage, params: [String : String], success:@escaping (_ result: [String: Any])->(), failure:@escaping (_ error: Error)->()) { func uploadImage(url:String,image: UIImage, params: [String : String], success:@escaping (_ result: [String: Any])->(), failure:@escaping (_ error: Error)->()) {
let paths = Bundle.main.path(forResource: "Interface_Z", ofType: "plist") let paths = Bundle.main.path(forResource: "Interface_Z", ofType: "plist")
...@@ -205,15 +201,15 @@ extension NetworkRequest { ...@@ -205,15 +201,15 @@ extension NetworkRequest {
success(Mapper<T>().map(JSONObject: value)) success(Mapper<T>().map(JSONObject: value))
}else if json["code"].intValue == 999 { }else if json["code"].intValue == 999 {
NotificationCenter.default.post(name: Notification.Name(rawValue: "logout"), object: nil) NotificationCenter.default.post(name: Notification.Name(rawValue: "logout"), object: nil)
}else{ }else{
if json["code"].intValue == 500 { if json["code"].intValue == 500 {
success(Mapper<T>().map(JSONObject: value)) success(Mapper<T>().map(JSONObject: value))
}else{ }else{
failture(DogError.DataInvalidError) failture(DogError.DataInvalidError)
} }
} }
case .failure(let error): case .failure(let error):
...@@ -222,7 +218,7 @@ extension NetworkRequest { ...@@ -222,7 +218,7 @@ extension NetworkRequest {
} }
} }
} }
} }
...@@ -69,13 +69,14 @@ class CaptchaView: UIView { ...@@ -69,13 +69,14 @@ class CaptchaView: UIView {
// let bgImg = UIImage.init(named: "codeBgImg") // let bgImg = UIImage.init(named: "codeBgImg")
// self.backgroundColor = UIColor.init(patternImage: bgImg!) // self.backgroundColor = UIColor.init(patternImage: bgImg!)
self.backgroundColor = UIColor(named: "app底色")
//设置layer圆角半径 //设置layer圆角半径
self.layer.cornerRadius = 5.0 self.layer.cornerRadius = 5.0
//隐藏边界 //隐藏边界
self.layer.masksToBounds = false self.layer.masksToBounds = false
self.layer.borderWidth = 1 self.layer.borderWidth = 1
self.layer.borderColor = UIColor.gray.cgColor self.layer.borderColor = UIColor(named: "分界线颜色")?.cgColor
} }
......
...@@ -73,6 +73,7 @@ class NavBarView: BaseView { ...@@ -73,6 +73,7 @@ class NavBarView: BaseView {
self.backgroundColor = UIColor.white self.backgroundColor = UIColor.white
titleLbl = UILabel() titleLbl = UILabel()
titleLbl.font = setFont(18) titleLbl.font = setFont(18)
titleLbl.textColor = UIColor(named: "标题字颜色")
titleLbl.textAlignment = .center titleLbl.textAlignment = .center
self.addSubview(titleLbl) self.addSubview(titleLbl)
titleLbl.snp.makeConstraints { (make) in titleLbl.snp.makeConstraints { (make) in
......
//
// BindingViewController.swift
// GeliBusinessPlatform
//
// Created by junye lu on 2020/4/15.
// Copyright © 2020 junye lu. All rights reserved.
//
import UIKit
class BindViewController: BaseViewController,NavBarViewDelegate {
@IBOutlet weak var accountTF: UITextField!
@IBOutlet weak var phoneTF: UITextField!
@IBOutlet weak var codeTF: UITextField!
@IBOutlet weak var topInputView: UIView!
//MARK: -绑定、获取验证码、忘记手机号码方法
@IBAction func getCodeAction(_ sender: Any) {
print("获取验证码")
}
@IBAction func forgetPhoneNumAction(_ sender: Any) {
print("忘记手机号码")
}
@IBAction func submitBindingAction(_ sender: Any) {
print("确认绑定账号")
}
override func viewDidLoad() {
super.viewDidLoad()
let navbar = NavBarView(frame: NavCGRect)
navbar.title = "换绑支付账号"
navbar.deleagte = self
self.view.addSubview(navbar)
topInputView.snp.makeConstraints { (make) in
make.top.equalTo(NavCGRect.height)
make.left.right.equalTo(0)
make.height.equalTo(50)
}
// Do any additional setup after loading the view.
}
//MARK: -delegate方法
func backAction() {
self.navigationController?.popViewController(animated: true)
}
}
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="15702" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
<device id="retina6_1" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15704"/>
<capability name="Named colors" minToolsVersion="9.0"/>
<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" customClass="BindViewController" customModule="GeliBusinessPlatform" customModuleProvider="target">
<connections>
<outlet property="accountTF" destination="ffm-Wf-cTs" id="cgF-DC-suj"/>
<outlet property="codeTF" destination="3oP-hI-HAZ" id="0CL-cl-EaA"/>
<outlet property="phoneTF" destination="t65-xv-Q0b" id="h0N-xy-zNV"/>
<outlet property="topInputView" destination="NLt-l1-671" id="Zd3-9m-ZL4"/>
<outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
</connections>
</placeholder>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
<view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="NLt-l1-671">
<rect key="frame" x="0.0" y="44" width="414" height="50"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="OsT-yM-MMu">
<rect key="frame" x="15" y="49" width="399" height="1"/>
<color key="backgroundColor" name="灰色分界线"/>
<constraints>
<constraint firstAttribute="height" constant="1" id="0Ta-R8-nvT"/>
</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="jOz-IM-jO5">
<rect key="frame" x="15" y="0.0" width="93" height="49"/>
<constraints>
<constraint firstAttribute="width" constant="93" id="cyZ-Lq-EkD"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" name="标题字颜色"/>
<nil key="highlightedColor"/>
</label>
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="请输入格利支付账号" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="ffm-Wf-cTs">
<rect key="frame" x="108" y="7.5" width="291" height="34"/>
<constraints>
<constraint firstAttribute="height" constant="34" id="xqs-jB-AOk"/>
</constraints>
<color key="textColor" name="标题字颜色"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<textInputTraits key="textInputTraits"/>
</textField>
</subviews>
<color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstItem="ffm-Wf-cTs" firstAttribute="leading" secondItem="jOz-IM-jO5" secondAttribute="trailing" id="3c5-af-q0C"/>
<constraint firstItem="ffm-Wf-cTs" firstAttribute="centerY" secondItem="jOz-IM-jO5" secondAttribute="centerY" id="6pH-Co-9Kt"/>
<constraint firstAttribute="trailing" secondItem="OsT-yM-MMu" secondAttribute="trailing" id="7vi-ui-Dg0"/>
<constraint firstItem="jOz-IM-jO5" firstAttribute="top" secondItem="NLt-l1-671" secondAttribute="top" id="8ws-PX-fIP"/>
<constraint firstAttribute="bottom" secondItem="OsT-yM-MMu" secondAttribute="bottom" id="DKb-DP-xU6"/>
<constraint firstAttribute="height" constant="50" id="Lb6-U9-1no"/>
<constraint firstItem="jOz-IM-jO5" firstAttribute="leading" secondItem="NLt-l1-671" secondAttribute="leading" constant="15" id="mH3-To-f3k"/>
<constraint firstItem="OsT-yM-MMu" firstAttribute="top" secondItem="jOz-IM-jO5" secondAttribute="bottom" id="rUr-hk-Muj"/>
<constraint firstItem="OsT-yM-MMu" firstAttribute="leading" secondItem="NLt-l1-671" secondAttribute="leading" constant="15" id="xhX-8s-kOZ"/>
<constraint firstAttribute="trailing" secondItem="ffm-Wf-cTs" secondAttribute="trailing" constant="15" id="yUz-p0-Rkw"/>
</constraints>
</view>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="KNo-tQ-dsg">
<rect key="frame" x="0.0" y="94" width="414" height="50"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="1x9-Pa-mWp">
<rect key="frame" x="15" y="49" width="399" height="1"/>
<color key="backgroundColor" name="灰色分界线"/>
<constraints>
<constraint firstAttribute="height" constant="1" id="g0H-fg-q7U"/>
</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="Hcl-nQ-8fP">
<rect key="frame" x="15" y="0.0" width="67" height="49"/>
<constraints>
<constraint firstAttribute="width" constant="67" id="YlY-IS-raZ"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" name="标题字颜色"/>
<nil key="highlightedColor"/>
</label>
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="请输入手机号码" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="t65-xv-Q0b">
<rect key="frame" x="82" y="7.5" width="317" height="34"/>
<constraints>
<constraint firstAttribute="height" constant="34" id="qOh-u3-0Al"/>
</constraints>
<color key="textColor" name="标题字颜色"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<textInputTraits key="textInputTraits"/>
</textField>
</subviews>
<color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstItem="1x9-Pa-mWp" firstAttribute="leading" secondItem="KNo-tQ-dsg" secondAttribute="leading" constant="15" id="65n-MU-eCJ"/>
<constraint firstItem="Hcl-nQ-8fP" firstAttribute="leading" secondItem="KNo-tQ-dsg" secondAttribute="leading" constant="15" id="C82-MZ-M8F"/>
<constraint firstItem="Hcl-nQ-8fP" firstAttribute="top" secondItem="KNo-tQ-dsg" secondAttribute="top" id="CqC-c7-rvj"/>
<constraint firstAttribute="bottom" secondItem="1x9-Pa-mWp" secondAttribute="bottom" id="DO2-WD-ewm"/>
<constraint firstAttribute="trailing" secondItem="t65-xv-Q0b" secondAttribute="trailing" constant="15" id="Vx4-EV-UrG"/>
<constraint firstItem="t65-xv-Q0b" firstAttribute="leading" secondItem="Hcl-nQ-8fP" secondAttribute="trailing" id="Zi5-zH-Mce"/>
<constraint firstAttribute="height" constant="50" id="dbn-BC-hod"/>
<constraint firstItem="1x9-Pa-mWp" firstAttribute="top" secondItem="Hcl-nQ-8fP" secondAttribute="bottom" id="fqb-2a-i2Z"/>
<constraint firstItem="t65-xv-Q0b" firstAttribute="centerY" secondItem="Hcl-nQ-8fP" secondAttribute="centerY" id="iCx-8F-ToU"/>
<constraint firstAttribute="trailing" secondItem="1x9-Pa-mWp" secondAttribute="trailing" id="jVc-Di-hjs"/>
</constraints>
</view>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="bCp-kS-a0t">
<rect key="frame" x="0.0" y="144" width="414" height="50"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="验证码:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="SjA-bd-foE">
<rect key="frame" x="15" y="0.0" width="54" height="50"/>
<constraints>
<constraint firstAttribute="width" constant="54" id="1cf-Xd-zDL"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="CmK-Hc-fnD">
<rect key="frame" x="319" y="0.0" width="80" height="50"/>
<constraints>
<constraint firstAttribute="width" constant="80" id="D0G-bA-CcS"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<state key="normal" title="层获取验证码">
<color key="titleColor" name="按钮渐变色下,字体颜色"/>
</state>
<connections>
<action selector="getCodeAction:" destination="-1" eventType="touchUpInside" id="nmY-n3-f3Q"/>
</connections>
</button>
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="请输入验证码" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="3oP-hI-HAZ">
<rect key="frame" x="69" y="8" width="235" height="34"/>
<constraints>
<constraint firstAttribute="height" constant="34" id="pxa-wr-z3b"/>
</constraints>
<color key="textColor" name="标题字颜色"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<textInputTraits key="textInputTraits"/>
</textField>
</subviews>
<color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstAttribute="trailing" secondItem="CmK-Hc-fnD" secondAttribute="trailing" constant="15" id="7Id-Lg-6TC"/>
<constraint firstAttribute="height" constant="50" id="BnX-tY-LG0"/>
<constraint firstItem="3oP-hI-HAZ" firstAttribute="centerY" secondItem="SjA-bd-foE" secondAttribute="centerY" id="Elg-zm-Zdd"/>
<constraint firstItem="CmK-Hc-fnD" firstAttribute="leading" secondItem="3oP-hI-HAZ" secondAttribute="trailing" constant="15" id="F2C-uT-r0Y"/>
<constraint firstItem="3oP-hI-HAZ" firstAttribute="leading" secondItem="SjA-bd-foE" secondAttribute="trailing" id="RMz-O8-uqX"/>
<constraint firstItem="CmK-Hc-fnD" firstAttribute="top" secondItem="bCp-kS-a0t" secondAttribute="top" id="Z0E-Zd-TF4"/>
<constraint firstItem="SjA-bd-foE" firstAttribute="top" secondItem="bCp-kS-a0t" secondAttribute="top" id="gv8-Ih-jrX"/>
<constraint firstAttribute="bottom" secondItem="CmK-Hc-fnD" secondAttribute="bottom" id="hMY-gs-rGu"/>
<constraint firstAttribute="bottom" secondItem="SjA-bd-foE" secondAttribute="bottom" id="xnE-sO-hSp"/>
<constraint firstItem="SjA-bd-foE" firstAttribute="leading" secondItem="bCp-kS-a0t" secondAttribute="leading" constant="15" id="z2W-Tk-UXt"/>
</constraints>
</view>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="waH-iS-ZgL" customClass="LGButton" customModule="LGButton">
<rect key="frame" x="37.5" y="294" width="339" height="44"/>
<color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstAttribute="height" constant="44" id="QhC-kH-4kk"/>
</constraints>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="color" keyPath="gradientStartColor">
<color key="value" name="按钮渐变色上"/>
</userDefinedRuntimeAttribute>
<userDefinedRuntimeAttribute type="color" keyPath="gradientEndColor">
<color key="value" name="按钮渐变色下,字体颜色"/>
</userDefinedRuntimeAttribute>
<userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
<real key="value" value="5"/>
</userDefinedRuntimeAttribute>
<userDefinedRuntimeAttribute type="string" keyPath="titleString" value="确认绑定支付账户"/>
<userDefinedRuntimeAttribute type="number" keyPath="titleFontSize">
<real key="value" value="17"/>
</userDefinedRuntimeAttribute>
</userDefinedRuntimeAttributes>
<connections>
<action selector="submitBindingAction:" destination="-1" eventType="touchUpInside" id="tJT-jq-0cb"/>
</connections>
</view>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="JJc-HS-SOo">
<rect key="frame" x="167.5" y="358" width="79" height="26"/>
<constraints>
<constraint firstAttribute="height" constant="26" id="5wB-Bp-zPy"/>
<constraint firstAttribute="width" constant="79" id="W6O-hL-jZ9"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="11"/>
<state key="normal" title="忘记手机号码?"/>
<connections>
<action selector="forgetPhoneNumAction:" destination="-1" eventType="touchUpInside" id="qBB-qS-7OI"/>
</connections>
</button>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<constraints>
<constraint firstItem="NLt-l1-671" firstAttribute="top" secondItem="fnl-2z-Ty3" secondAttribute="top" id="0Ku-L4-Tkc"/>
<constraint firstItem="NLt-l1-671" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="1OO-6W-Yef"/>
<constraint firstItem="JJc-HS-SOo" firstAttribute="top" secondItem="waH-iS-ZgL" secondAttribute="bottom" constant="20" id="62I-VJ-dGY"/>
<constraint firstItem="KNo-tQ-dsg" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" id="DOi-22-uzY"/>
<constraint firstItem="waH-iS-ZgL" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" constant="37.5" id="P4B-Jp-aPM"/>
<constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="bCp-kS-a0t" secondAttribute="trailing" id="UOk-Tx-QwB"/>
<constraint firstItem="waH-iS-ZgL" firstAttribute="top" secondItem="bCp-kS-a0t" secondAttribute="bottom" constant="100" id="UjX-A0-vCe"/>
<constraint firstItem="bCp-kS-a0t" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" id="UvF-Pr-mil"/>
<constraint firstItem="KNo-tQ-dsg" firstAttribute="top" secondItem="NLt-l1-671" secondAttribute="bottom" id="W4q-P7-j7d"/>
<constraint firstItem="JJc-HS-SOo" firstAttribute="centerX" secondItem="waH-iS-ZgL" secondAttribute="centerX" id="av7-O1-Iv8"/>
<constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="KNo-tQ-dsg" secondAttribute="trailing" id="eXN-H3-sud"/>
<constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="NLt-l1-671" secondAttribute="trailing" id="hRL-kU-JtX"/>
<constraint firstItem="bCp-kS-a0t" firstAttribute="top" secondItem="KNo-tQ-dsg" secondAttribute="bottom" id="hwk-HZ-g3B"/>
<constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="waH-iS-ZgL" secondAttribute="trailing" constant="37.5" id="sBd-o3-rwa"/>
</constraints>
<viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/>
<point key="canvasLocation" x="133" y="113"/>
</view>
</objects>
<resources>
<namedColor name="按钮渐变色上">
<color red="0.3880000114440918" green="0.62400001287460327" blue="0.90200001001358032" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor>
<namedColor name="按钮渐变色下,字体颜色">
<color red="0.27799999713897705" green="0.56099998950958252" blue="0.88999998569488525" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor>
<namedColor name="标题字颜色">
<color red="0.18000000715255737" green="0.18000000715255737" blue="0.18000000715255737" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor>
<namedColor name="灰色分界线">
<color red="0.92900002002716064" green="0.92900002002716064" blue="0.92900002002716064" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor>
</resources>
</document>
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
import UIKit import UIKit
import Alamofire import Alamofire
import CryptoSwift import CryptoSwift
import LGButton
class LoginViewController: BaseViewController { class LoginViewController: BaseViewController {
...@@ -20,9 +20,15 @@ let vc = DemoViewController() ...@@ -20,9 +20,15 @@ let vc = DemoViewController()
self.navigationController?.pushViewController(vc, animated: true) self.navigationController?.pushViewController(vc, animated: true)
} }
@IBAction func loginAction(_ sender: LGButton) { @IBAction func shPassAction(_ sender: UIButton) {
sender.isSelected = !sender.isSelected
passTF.isSecureTextEntry = !sender.isSelected
}
@IBAction func loginAction(_ sender: Any) {
print("loginAction") print("loginAction")
let vc = BindViewController()
self.navigationController?.pushViewController(vc, animated: true)
} }
//MARK: - 输入账号、密码、验证码 //MARK: - 输入账号、密码、验证码
...@@ -34,7 +40,7 @@ self.navigationController?.pushViewController(vc, animated: true) ...@@ -34,7 +40,7 @@ self.navigationController?.pushViewController(vc, animated: true)
//MARK: - viewWillAppear //MARK: - viewWillAppear
override func viewWillAppear(_ animated: Bool) { override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated) super.viewWillAppear(animated)
self.view.backgroundColor = UIColor(named:"白色背景色")
let codeV = CaptchaView(frame:codeView.bounds) let codeV = CaptchaView(frame:codeView.bounds)
codeView.addSubview(codeV); codeView.addSubview(codeV);
} }
...@@ -43,7 +49,7 @@ self.navigationController?.pushViewController(vc, animated: true) ...@@ -43,7 +49,7 @@ self.navigationController?.pushViewController(vc, animated: true)
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()
passTF.isSecureTextEntry = true
} }
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/> <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews> <subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="AdE-4p-9iF"> <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="banner" translatesAutoresizingMaskIntoConstraints="NO" id="AdE-4p-9iF">
<rect key="frame" x="0.0" y="0.0" width="375" height="234"/> <rect key="frame" x="0.0" y="0.0" width="375" height="234"/>
<constraints> <constraints>
<constraint firstAttribute="height" constant="234" id="tCW-CX-6JG"> <constraint firstAttribute="height" constant="234" id="tCW-CX-6JG">
...@@ -113,7 +113,7 @@ ...@@ -113,7 +113,7 @@
</constraints> </constraints>
</view> </view>
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="请输入密码" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="ipW-Al-eG6"> <textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="请输入密码" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="ipW-Al-eG6">
<rect key="frame" x="123.5" y="11" width="147" height="34"/> <rect key="frame" x="123.5" y="11" width="66.5" height="34"/>
<constraints> <constraints>
<constraint firstAttribute="height" constant="34" id="9Ek-gz-Qgx"/> <constraint firstAttribute="height" constant="34" id="9Ek-gz-Qgx"/>
</constraints> </constraints>
...@@ -121,36 +121,34 @@ ...@@ -121,36 +121,34 @@
<fontDescription key="fontDescription" type="system" pointSize="13"/> <fontDescription key="fontDescription" type="system" pointSize="13"/>
<textInputTraits key="textInputTraits"/> <textInputTraits key="textInputTraits"/>
</textField> </textField>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="pencil" catalog="system" translatesAutoresizingMaskIntoConstraints="NO" id="Qlw-bX-fHQ"> <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="xgv-CB-GLZ">
<rect key="frame" x="305" y="20.5" width="17.5" height="15.5"/> <rect key="frame" x="305.5" y="23" width="17" height="10"/>
</imageView>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="xgv-CB-GLZ">
<rect key="frame" x="285.5" y="-0.5" width="56.5" height="56.5"/>
<constraints> <constraints>
<constraint firstAttribute="height" constant="56.5" id="Tjn-KO-sxc"/> <constraint firstAttribute="height" constant="10" id="a0w-jl-rNH"/>
<constraint firstAttribute="width" constant="56.5" id="u4Q-Ub-HoS"/> <constraint firstAttribute="width" constant="17" id="hRV-DN-5Um"/>
</constraints> </constraints>
<state key="normal" title="Button"/> <state key="normal" image="guanbi"/>
<state key="selected" image="xianshi "/>
<connections>
<action selector="shPassAction:" destination="-1" eventType="touchUpInside" id="S3P-pI-hyJ"/>
</connections>
</button> </button>
</subviews> </subviews>
<color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/> <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints> <constraints>
<constraint firstItem="xgv-CB-GLZ" firstAttribute="leading" secondItem="ipW-Al-eG6" secondAttribute="trailing" constant="15" id="21O-9S-VaC"/>
<constraint firstItem="ipW-Al-eG6" firstAttribute="centerY" secondItem="hAO-bO-280" secondAttribute="centerY" id="7dR-sK-Zsv"/> <constraint firstItem="ipW-Al-eG6" firstAttribute="centerY" secondItem="hAO-bO-280" secondAttribute="centerY" id="7dR-sK-Zsv"/>
<constraint firstItem="xgv-CB-GLZ" firstAttribute="centerY" secondItem="Qlw-bX-fHQ" secondAttribute="centerY" id="8lr-lb-ggX"/>
<constraint firstAttribute="trailing" secondItem="Mlw-Ng-8f9" secondAttribute="trailing" constant="42.5" id="94n-o3-G0v"/> <constraint firstAttribute="trailing" secondItem="Mlw-Ng-8f9" secondAttribute="trailing" constant="42.5" id="94n-o3-G0v"/>
<constraint firstItem="hAO-bO-280" firstAttribute="top" secondItem="OaN-ws-ype" secondAttribute="top" id="Dqz-X5-I9k"/> <constraint firstItem="hAO-bO-280" firstAttribute="top" secondItem="OaN-ws-ype" secondAttribute="top" id="Dqz-X5-I9k"/>
<constraint firstItem="ZCK-xJ-hVg" firstAttribute="leading" secondItem="hAO-bO-280" secondAttribute="trailing" constant="15" id="EA3-5Y-w5F"/> <constraint firstItem="ZCK-xJ-hVg" firstAttribute="leading" secondItem="hAO-bO-280" secondAttribute="trailing" constant="15" id="EA3-5Y-w5F"/>
<constraint firstAttribute="height" constant="56.5" id="KkC-6K-McV"/> <constraint firstAttribute="height" constant="56.5" id="KkC-6K-McV"/>
<constraint firstAttribute="bottom" secondItem="Mlw-Ng-8f9" secondAttribute="bottom" id="Kws-hY-wOc"/> <constraint firstAttribute="bottom" secondItem="Mlw-Ng-8f9" secondAttribute="bottom" id="Kws-hY-wOc"/>
<constraint firstItem="ipW-Al-eG6" firstAttribute="leading" secondItem="ZCK-xJ-hVg" secondAttribute="trailing" constant="15" id="NDa-PU-i4w"/> <constraint firstItem="ipW-Al-eG6" firstAttribute="leading" secondItem="ZCK-xJ-hVg" secondAttribute="trailing" constant="15" id="NDa-PU-i4w"/>
<constraint firstItem="Qlw-bX-fHQ" firstAttribute="centerY" secondItem="hAO-bO-280" secondAttribute="centerY" id="PNy-0h-IHU"/>
<constraint firstItem="ZCK-xJ-hVg" firstAttribute="centerY" secondItem="hAO-bO-280" secondAttribute="centerY" id="QWP-1w-Lxq"/> <constraint firstItem="ZCK-xJ-hVg" firstAttribute="centerY" secondItem="hAO-bO-280" secondAttribute="centerY" id="QWP-1w-Lxq"/>
<constraint firstItem="xgv-CB-GLZ" firstAttribute="centerX" secondItem="Qlw-bX-fHQ" secondAttribute="centerX" id="REv-SD-m6f"/> <constraint firstItem="xgv-CB-GLZ" firstAttribute="centerY" secondItem="ipW-Al-eG6" secondAttribute="centerY" id="nCm-Z6-wIR"/>
<constraint firstAttribute="trailing" secondItem="Qlw-bX-fHQ" secondAttribute="trailing" constant="52.5" id="bcs-0x-hMp"/>
<constraint firstItem="Mlw-Ng-8f9" firstAttribute="top" secondItem="hAO-bO-280" secondAttribute="bottom" id="qTb-8R-WjZ"/> <constraint firstItem="Mlw-Ng-8f9" firstAttribute="top" secondItem="hAO-bO-280" secondAttribute="bottom" id="qTb-8R-WjZ"/>
<constraint firstItem="hAO-bO-280" firstAttribute="leading" secondItem="OaN-ws-ype" secondAttribute="leading" constant="52.5" id="uHI-YO-GLX"/> <constraint firstItem="hAO-bO-280" firstAttribute="leading" secondItem="OaN-ws-ype" secondAttribute="leading" constant="52.5" id="uHI-YO-GLX"/>
<constraint firstItem="Mlw-Ng-8f9" firstAttribute="leading" secondItem="OaN-ws-ype" secondAttribute="leading" constant="42.5" id="vaj-M3-2ae"/> <constraint firstItem="Mlw-Ng-8f9" firstAttribute="leading" secondItem="OaN-ws-ype" secondAttribute="leading" constant="42.5" id="vaj-M3-2ae"/>
<constraint firstAttribute="trailing" secondItem="xgv-CB-GLZ" secondAttribute="trailing" constant="52.5" id="x5U-vH-WGA"/>
</constraints> </constraints>
</view> </view>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ZRL-RS-ju7"> <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ZRL-RS-ju7">
...@@ -239,7 +237,7 @@ ...@@ -239,7 +237,7 @@
<userDefinedRuntimeAttribute type="string" keyPath="titleFontName" value="PingFang SC Medium"/> <userDefinedRuntimeAttribute type="string" keyPath="titleFontName" value="PingFang SC Medium"/>
</userDefinedRuntimeAttributes> </userDefinedRuntimeAttributes>
<connections> <connections>
<action selector="loginAction:" destination="-1" eventType="valueChanged" id="NKF-QG-WPi"/> <action selector="loginAction:" destination="-1" eventType="touchUpInside" id="jlC-gq-qwQ"/>
</connections> </connections>
</view> </view>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="MQe-6S-qXS"> <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="MQe-6S-qXS">
...@@ -280,18 +278,20 @@ ...@@ -280,18 +278,20 @@
</view> </view>
</objects> </objects>
<resources> <resources>
<image name="pencil" catalog="system" width="64" height="56"/> <image name="banner" width="750" height="468"/>
<image name="guanbi" width="37" height="18"/>
<image name="xianshi " width="37" height="24"/>
<namedColor name="分界线颜色"> <namedColor name="分界线颜色">
<color red="0.65098039215686276" green="0.75686274509803919" blue="0.8784313725490196" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <color red="0.65100002288818359" green="0.75700002908706665" blue="0.87800002098083496" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor> </namedColor>
<namedColor name="按钮渐变色上"> <namedColor name="按钮渐变色上">
<color red="0.38823529411764707" green="0.62352941176470589" blue="0.90196078431372551" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <color red="0.3880000114440918" green="0.62400001287460327" blue="0.90200001001358032" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor> </namedColor>
<namedColor name="按钮渐变色下"> <namedColor name="按钮渐变色下">
<color red="0.27843137254901962" green="0.5607843137254902" blue="0.8901960784313725" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <color red="0.27843137254901962" green="0.5607843137254902" blue="0.8901960784313725" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor> </namedColor>
<namedColor name="标题字颜色"> <namedColor name="标题字颜色">
<color red="0.1803921568627451" green="0.1803921568627451" blue="0.1803921568627451" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <color red="0.18000000715255737" green="0.18000000715255737" blue="0.18000000715255737" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor> </namedColor>
</resources> </resources>
</document> </document>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment