Commit 8f64232195ea936881f4759d7b5288e3087c7350
Exists in
parentassistant
Merge branch 'parentassistant' of http://git.shunzhi.net/iosgroup/parentassistan…
…t into parentassistant
Showing
19 changed files
with
305 additions
and
105 deletions
Show diff stats
ParentAssistant/ParentAssistant/Classes/controllers/Information/InformationViewController.swift
@@ -113,7 +113,7 @@ class InformationViewController: UIViewController,UISearchBarDelegate { | @@ -113,7 +113,7 @@ class InformationViewController: UIViewController,UISearchBarDelegate { | ||
113 | let leftbtn = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 40)) | 113 | let leftbtn = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 40)) |
114 | leftLabel = UILabel(frame: CGRect(x: 0, y: 10, width: 60, height: 20)) | 114 | leftLabel = UILabel(frame: CGRect(x: 0, y: 10, width: 60, height: 20)) |
115 | leftLabel.text = AccountManager.shared.address | 115 | leftLabel.text = AccountManager.shared.address |
116 | - leftLabel.textColor = UIColor.black | 116 | + leftLabel.textColor = UIColor.white |
117 | leftLabel.sizeToFit() | 117 | leftLabel.sizeToFit() |
118 | let image = UIImageView(frame: CGRect(x: leftLabel.frame.maxX+4, y: 15, width: 16, height: 9)) | 118 | let image = UIImageView(frame: CGRect(x: leftLabel.frame.maxX+4, y: 15, width: 16, height: 9)) |
119 | image.image = #imageLiteral(resourceName: "evaluation_icon_pushDown") | 119 | image.image = #imageLiteral(resourceName: "evaluation_icon_pushDown") |
@@ -182,7 +182,7 @@ class InformationViewController: UIViewController,UISearchBarDelegate { | @@ -182,7 +182,7 @@ class InformationViewController: UIViewController,UISearchBarDelegate { | ||
182 | //点击资讯进入详情 | 182 | //点击资讯进入详情 |
183 | func pushToInfoView(index:Int){ | 183 | func pushToInfoView(index:Int){ |
184 | let vcs = Story.instantiateViewControllerWithIdentifier("JSViewController", storyName: "JS") as! JSViewController | 184 | let vcs = Story.instantiateViewControllerWithIdentifier("JSViewController", storyName: "JS") as! JSViewController |
185 | - vcs.webURL = "http://60.190.202.57:8101/InformationDetail.aspx?id=75&areaname=%E4%BD%99%E6%9D%AD%E5%8C%BA"//(HTTPServer.HOSTWAP+"/InformationDetail.aspx?id="+"\(data.channelContent[index].id)"+"&areaname="+AccountManager.shared.address)//.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)! | 185 | + vcs.webURL = (HTTPServer.HOSTWAP+"/InformationDetail.aspx?id="+"\(data.channelContent[index].id)"+"&areaname="+AccountManager.shared.address)//.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)! |
186 | 186 | ||
187 | self.navigationController?.present(vcs.wrapWithNavigationController(), animated: true, completion: nil) | 187 | self.navigationController?.present(vcs.wrapWithNavigationController(), animated: true, completion: nil) |
188 | } | 188 | } |
@@ -349,7 +349,7 @@ extension ChannelSelectView:UICollectionViewDataSource,UICollectionViewDelegateF | @@ -349,7 +349,7 @@ extension ChannelSelectView:UICollectionViewDataSource,UICollectionViewDelegateF | ||
349 | 349 | ||
350 | func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { | 350 | func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { |
351 | let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "channelcell", for: indexPath) as! ChannelSelectViewCollectionViewCell | 351 | let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "channelcell", for: indexPath) as! ChannelSelectViewCollectionViewCell |
352 | - cell.image.sd_setImage(with: URL(string: (HTTPServer.HOSTImage+SubchannelList[indexPath.row].channelImage).addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!), placeholderImage: UIImage(named: "navigationBar_backgrounImage")) | 352 | + cell.image.sd_setImage(with: URL(string: (HTTPServer.HOSTImage+SubchannelList[indexPath.row].channelImage).addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!), placeholderImage: UIImage(named: "evaluation_icon_highSchoolEnter")) |
353 | cell.channelName.text = SubchannelList[indexPath.row].channelName | 353 | cell.channelName.text = SubchannelList[indexPath.row].channelName |
354 | return cell | 354 | return cell |
355 | } | 355 | } |
ParentAssistant/ParentAssistant/Classes/controllers/Information/view/ChannelCollectionViewCell.xib
@@ -41,25 +41,25 @@ | @@ -41,25 +41,25 @@ | ||
41 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="评论:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Lvp-kr-OuU"> | 41 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="评论:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Lvp-kr-OuU"> |
42 | <rect key="frame" x="8" y="72" width="24" height="12"/> | 42 | <rect key="frame" x="8" y="72" width="24" height="12"/> |
43 | <fontDescription key="fontDescription" type="system" pointSize="10"/> | 43 | <fontDescription key="fontDescription" type="system" pointSize="10"/> |
44 | - <color key="textColor" white="0.33333333329999998" alpha="1" colorSpace="calibratedWhite"/> | 44 | + <color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/> |
45 | <nil key="highlightedColor"/> | 45 | <nil key="highlightedColor"/> |
46 | </label> | 46 | </label> |
47 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="30" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="3KK-be-Vix"> | 47 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="30" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="3KK-be-Vix"> |
48 | <rect key="frame" x="40" y="72" width="13" height="12"/> | 48 | <rect key="frame" x="40" y="72" width="13" height="12"/> |
49 | <fontDescription key="fontDescription" type="system" pointSize="10"/> | 49 | <fontDescription key="fontDescription" type="system" pointSize="10"/> |
50 | - <color key="textColor" white="0.33333333329999998" alpha="1" colorSpace="calibratedWhite"/> | 50 | + <color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/> |
51 | <nil key="highlightedColor"/> | 51 | <nil key="highlightedColor"/> |
52 | </label> | 52 | </label> |
53 | - <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="分享:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="wMQ-5O-LNi"> | 53 | + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="转发:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="wMQ-5O-LNi"> |
54 | <rect key="frame" x="182" y="72" width="24" height="12"/> | 54 | <rect key="frame" x="182" y="72" width="24" height="12"/> |
55 | <fontDescription key="fontDescription" type="system" pointSize="10"/> | 55 | <fontDescription key="fontDescription" type="system" pointSize="10"/> |
56 | - <color key="textColor" white="0.33333333329999998" alpha="1" colorSpace="calibratedWhite"/> | 56 | + <color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/> |
57 | <nil key="highlightedColor"/> | 57 | <nil key="highlightedColor"/> |
58 | </label> | 58 | </label> |
59 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="15" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Dfn-o9-z6k"> | 59 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="15" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Dfn-o9-z6k"> |
60 | <rect key="frame" x="214" y="72" width="11.5" height="12"/> | 60 | <rect key="frame" x="214" y="72" width="11.5" height="12"/> |
61 | <fontDescription key="fontDescription" type="system" pointSize="10"/> | 61 | <fontDescription key="fontDescription" type="system" pointSize="10"/> |
62 | - <color key="textColor" white="0.33333333329999998" alpha="1" colorSpace="calibratedWhite"/> | 62 | + <color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/> |
63 | <nil key="highlightedColor"/> | 63 | <nil key="highlightedColor"/> |
64 | </label> | 64 | </label> |
65 | </subviews> | 65 | </subviews> |
ParentAssistant/ParentAssistant/Classes/controllers/Information/view/ChannelSelectViewCollectionViewCell.xib
@@ -20,7 +20,7 @@ | @@ -20,7 +20,7 @@ | ||
20 | <rect key="frame" x="0.0" y="0.0" width="89" height="92"/> | 20 | <rect key="frame" x="0.0" y="0.0" width="89" height="92"/> |
21 | <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> | 21 | <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> |
22 | <subviews> | 22 | <subviews> |
23 | - <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="Eco-Nm-1SK"> | 23 | + <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="evaluation_icon_highSchoolEnter" translatesAutoresizingMaskIntoConstraints="NO" id="Eco-Nm-1SK"> |
24 | <rect key="frame" x="18.5" y="8" width="52" height="52"/> | 24 | <rect key="frame" x="18.5" y="8" width="52" height="52"/> |
25 | <constraints> | 25 | <constraints> |
26 | <constraint firstAttribute="width" secondItem="Eco-Nm-1SK" secondAttribute="height" multiplier="1:1" id="8K9-ZW-Cxu"/> | 26 | <constraint firstAttribute="width" secondItem="Eco-Nm-1SK" secondAttribute="height" multiplier="1:1" id="8K9-ZW-Cxu"/> |
@@ -28,7 +28,7 @@ | @@ -28,7 +28,7 @@ | ||
28 | <userDefinedRuntimeAttributes> | 28 | <userDefinedRuntimeAttributes> |
29 | <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/> | 29 | <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/> |
30 | <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> | 30 | <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> |
31 | - <integer key="value" value="26"/> | 31 | + <integer key="value" value="0"/> |
32 | </userDefinedRuntimeAttribute> | 32 | </userDefinedRuntimeAttribute> |
33 | </userDefinedRuntimeAttributes> | 33 | </userDefinedRuntimeAttributes> |
34 | </imageView> | 34 | </imageView> |
@@ -38,7 +38,7 @@ | @@ -38,7 +38,7 @@ | ||
38 | <constraint firstAttribute="height" constant="16" id="Zvs-7M-0pT"/> | 38 | <constraint firstAttribute="height" constant="16" id="Zvs-7M-0pT"/> |
39 | </constraints> | 39 | </constraints> |
40 | <fontDescription key="fontDescription" type="system" pointSize="13"/> | 40 | <fontDescription key="fontDescription" type="system" pointSize="13"/> |
41 | - <nil key="textColor"/> | 41 | + <color key="textColor" red="0.27450980390000002" green="0.50980392159999999" blue="0.90196078430000004" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
42 | <nil key="highlightedColor"/> | 42 | <nil key="highlightedColor"/> |
43 | </label> | 43 | </label> |
44 | </subviews> | 44 | </subviews> |
@@ -59,4 +59,7 @@ | @@ -59,4 +59,7 @@ | ||
59 | <point key="canvasLocation" x="48" y="63"/> | 59 | <point key="canvasLocation" x="48" y="63"/> |
60 | </collectionViewCell> | 60 | </collectionViewCell> |
61 | </objects> | 61 | </objects> |
62 | + <resources> | ||
63 | + <image name="evaluation_icon_highSchoolEnter" width="44" height="44"/> | ||
64 | + </resources> | ||
62 | </document> | 65 | </document> |
ParentAssistant/ParentAssistant/Classes/controllers/evaluation/EvaluationViewController.swift
@@ -28,7 +28,7 @@ class EvaluationViewController: UIViewController,CLLocationManagerDelegate,Selec | @@ -28,7 +28,7 @@ class EvaluationViewController: UIViewController,CLLocationManagerDelegate,Selec | ||
28 | var leftLabel:UILabel! | 28 | var leftLabel:UILabel! |
29 | override func viewDidLoad() { | 29 | override func viewDidLoad() { |
30 | super.viewDidLoad() | 30 | super.viewDidLoad() |
31 | - self.navigationItem.title = "测评" | 31 | + self.navigationItem.title = "慧测慧练" |
32 | addLeftBarBtn() | 32 | addLeftBarBtn() |
33 | locationAction() | 33 | locationAction() |
34 | addBottomBtn() | 34 | addBottomBtn() |
@@ -120,7 +120,7 @@ class EvaluationViewController: UIViewController,CLLocationManagerDelegate,Selec | @@ -120,7 +120,7 @@ class EvaluationViewController: UIViewController,CLLocationManagerDelegate,Selec | ||
120 | let leftbtn = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 40)) | 120 | let leftbtn = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 40)) |
121 | leftLabel = UILabel(frame: CGRect(x: 0, y: 10, width: 60, height: 20)) | 121 | leftLabel = UILabel(frame: CGRect(x: 0, y: 10, width: 60, height: 20)) |
122 | leftLabel.text = AccountManager.shared.address | 122 | leftLabel.text = AccountManager.shared.address |
123 | - leftLabel.textColor = UIColor.black | 123 | + leftLabel.textColor = UIColor.white |
124 | leftLabel.sizeToFit() | 124 | leftLabel.sizeToFit() |
125 | let image = UIImageView(frame: CGRect(x: leftLabel.frame.maxX+4, y: 15, width: 16, height: 9)) | 125 | let image = UIImageView(frame: CGRect(x: leftLabel.frame.maxX+4, y: 15, width: 16, height: 9)) |
126 | image.image = #imageLiteral(resourceName: "evaluation_icon_pushDown") | 126 | image.image = #imageLiteral(resourceName: "evaluation_icon_pushDown") |
@@ -260,7 +260,7 @@ extension EvaluationViewController:UICollectionViewDataSource,UICollectionViewDe | @@ -260,7 +260,7 @@ extension EvaluationViewController:UICollectionViewDataSource,UICollectionViewDe | ||
260 | 260 | ||
261 | func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { | 261 | func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { |
262 | let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "channelcell", for: indexPath) as! ChannelSelectViewCollectionViewCell | 262 | let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "channelcell", for: indexPath) as! ChannelSelectViewCollectionViewCell |
263 | - cell.image.sd_setImage(with: URL(string: (HTTPServer.HOSTImage+toolArr[indexPath.row].toolImage).addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!), placeholderImage: #imageLiteral(resourceName: "defphoto")) | 263 | + cell.image.sd_setImage(with: URL(string: (HTTPServer.HOSTImage+toolArr[indexPath.row].toolImage).addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!), placeholderImage: UIImage(named: "evaluation_icon_highSchoolEnter")) |
264 | cell.channelName.text = toolArr[indexPath.row].toolName | 264 | cell.channelName.text = toolArr[indexPath.row].toolName |
265 | return cell | 265 | return cell |
266 | } | 266 | } |
ParentAssistant/ParentAssistant/Classes/controllers/my/Controller/GetBackPasswordViewController.swift
@@ -33,7 +33,7 @@ class GetBackPasswordViewController: UIViewController,UITextFieldDelegate { | @@ -33,7 +33,7 @@ class GetBackPasswordViewController: UIViewController,UITextFieldDelegate { | ||
33 | getCodeBtn.layer.borderColor = UIColor.lightGray.cgColor | 33 | getCodeBtn.layer.borderColor = UIColor.lightGray.cgColor |
34 | topView.constant = (getScreenHeight()-325)/3 | 34 | topView.constant = (getScreenHeight()-325)/3 |
35 | passwordHiddenBtn.setImage(UIImage(named: "my_password_look"), for: UIControlState.selected) | 35 | passwordHiddenBtn.setImage(UIImage(named: "my_password_look"), for: UIControlState.selected) |
36 | - NotificationCenter.default.addObserver(self, selector: #selector(RegisterViewController.keyboardWIllChange(_:)), name: NSNotification.Name.UIKeyboardWillChangeFrame, object: nil) | 36 | + NotificationCenter.default.addObserver(self, selector: #selector(GetBackPasswordViewController.keyboardWIllChange(_:)), name: NSNotification.Name.UIKeyboardWillChangeFrame, object: nil) |
37 | } | 37 | } |
38 | // MARK: - 根据键盘调整高度 | 38 | // MARK: - 根据键盘调整高度 |
39 | @objc func keyboardWIllChange(_ noti: Notification){ | 39 | @objc func keyboardWIllChange(_ noti: Notification){ |
@@ -122,9 +122,63 @@ class GetBackPasswordViewController: UIViewController,UITextFieldDelegate { | @@ -122,9 +122,63 @@ class GetBackPasswordViewController: UIViewController,UITextFieldDelegate { | ||
122 | httpJsonResule(jsonString: str, error: error, successHandler: { (json) -> Void in | 122 | httpJsonResule(jsonString: str, error: error, successHandler: { (json) -> Void in |
123 | let alertVC = UIAlertController(title: "提示", message: "密码修改成功", preferredStyle: UIAlertControllerStyle.alert) | 123 | let alertVC = UIAlertController(title: "提示", message: "密码修改成功", preferredStyle: UIAlertControllerStyle.alert) |
124 | let showBtn = UIAlertAction(title: "确认", style: UIAlertActionStyle.default) { (action) in | 124 | let showBtn = UIAlertAction(title: "确认", style: UIAlertActionStyle.default) { (action) in |
125 | - self.dismiss(animated: true) { | ||
126 | - //登录 | ||
127 | - } | 125 | + self.navigationController?.popToRootViewController(animated: true) |
126 | + //登录 | ||
127 | + SVProgressHUD.show(withStatus: "登录中...") | ||
128 | + HTTPServer.shared.login(completionHandler: { (str, error) in | ||
129 | + SVProgressHUD.dismiss() | ||
130 | + let json=JSON.fromString(str) | ||
131 | + if let ret=json{ | ||
132 | + let er=ret["error"].string | ||
133 | + if let errorStr=er{ | ||
134 | + let Strings=errorStr.components(separatedBy: ":") | ||
135 | + if Strings.count >= 2 { | ||
136 | + switch Strings[1] { | ||
137 | + //用户关联多个身份,请使用学事号登录:100 | ||
138 | + case "101"://用户认证身份不存在:101 | ||
139 | + appDelegate.window!.makeToast("用户认证身份不存在,请进行账号激活。") | ||
140 | + break | ||
141 | + //用户帐号或密码错误:102 | ||
142 | + case "103":// 用户不存在:103 | ||
143 | + appDelegate.window!.makeToast("该号码不存在,请联系客服400-826-2468") | ||
144 | + break | ||
145 | + default: | ||
146 | + appDelegate.window!.makeToast(errorStr) | ||
147 | + break | ||
148 | + } | ||
149 | + }else{ | ||
150 | + appDelegate.window!.makeToast(errorStr) | ||
151 | + } | ||
152 | + }else if ret["access_token"].stringValue != ""{ | ||
153 | + AccountManager.shared.setTokenInfo(tokenInfo: ret) | ||
154 | + AccountManager.shared.saveToken(tokenInfo: ret) | ||
155 | + AccountManager.shared.refreshUserInfo(self.phoneTextField.text!, completionHandler: { (finish) in | ||
156 | + if finish{ | ||
157 | + let ID=AccountManager.shared.rawUserInfo!.contentData()["userid"].stringValue | ||
158 | + YXMessageManager.share.loginWithYX(account: ID, token: ID.md5()) { (success) in | ||
159 | + SVProgressHUD.dismiss() | ||
160 | + if !success { | ||
161 | + AccountManager.shared.logOut() | ||
162 | + appDelegate.window!.makeToast("聊天服务登录失败,请连接网络重试") | ||
163 | + }else{ | ||
164 | + //云信登录成功 | ||
165 | + self.dismiss(animated: true, completion: nil) | ||
166 | + } | ||
167 | + } | ||
168 | + }else{ | ||
169 | + appDelegate.window!.makeToast("身份获取失败") | ||
170 | + SVProgressHUD.dismiss() | ||
171 | + } | ||
172 | + }) | ||
173 | + }else{ | ||
174 | + SVProgressHUD.dismiss() | ||
175 | + appDelegate.window!.makeToast("登录失败,请稍后重试") | ||
176 | + } | ||
177 | + }else{ | ||
178 | + SVProgressHUD.dismiss() | ||
179 | + appDelegate.window!.makeToast("登录失败") | ||
180 | + } | ||
181 | + }, phone: self.phoneTextField.text!, password: self.passwordTextField.text!) | ||
128 | } | 182 | } |
129 | alertVC.addAction(showBtn) | 183 | alertVC.addAction(showBtn) |
130 | self.present(alertVC, animated: true, completion: nil) | 184 | self.present(alertVC, animated: true, completion: nil) |
ParentAssistant/ParentAssistant/Classes/controllers/my/Controller/LoginViewController.swift
@@ -14,24 +14,22 @@ class LoginViewController: UIViewController,UITextFieldDelegate { | @@ -14,24 +14,22 @@ class LoginViewController: UIViewController,UITextFieldDelegate { | ||
14 | @IBOutlet var phoneTextField: UITextField!//电话号码 | 14 | @IBOutlet var phoneTextField: UITextField!//电话号码 |
15 | @IBOutlet var passwordTextField: UITextField!//密码 | 15 | @IBOutlet var passwordTextField: UITextField!//密码 |
16 | @IBOutlet var passwordHiddenBtn: UIButton!//查看密码按钮 | 16 | @IBOutlet var passwordHiddenBtn: UIButton!//查看密码按钮 |
17 | - var phoneNumber:String = "" | ||
18 | override func viewDidLoad() { | 17 | override func viewDidLoad() { |
19 | super.viewDidLoad() | 18 | super.viewDidLoad() |
20 | layoutSubViews() | 19 | layoutSubViews() |
21 | } | 20 | } |
22 | override func viewWillAppear(_ animated: Bool) { | 21 | override func viewWillAppear(_ animated: Bool) { |
23 | super.viewWillAppear(animated) | 22 | super.viewWillAppear(animated) |
24 | - self.navigationController?.navigationBar.isHidden = true | 23 | + self.navigationController?.navigationBar.isHidden = false |
25 | } | 24 | } |
26 | // MARK: - 设置控件属性 | 25 | // MARK: - 设置控件属性 |
27 | func layoutSubViews(){ | 26 | func layoutSubViews(){ |
28 | - self.navigationController?.navigationBar.isHidden = true | 27 | + self.navigationController?.navigationBar.isHidden = false |
28 | + self.navigationItem.title = "登录" | ||
29 | topView.constant = (getScreenHeight()-325)/3 | 29 | topView.constant = (getScreenHeight()-325)/3 |
30 | passwordHiddenBtn.setImage(UIImage(named: "my_password_look"), for: UIControlState.selected) | 30 | passwordHiddenBtn.setImage(UIImage(named: "my_password_look"), for: UIControlState.selected) |
31 | - NotificationCenter.default.addObserver(self, selector: #selector(RegisterViewController.keyboardWIllChange(_:)), name: NSNotification.Name.UIKeyboardWillChangeFrame, object: nil) | ||
32 | - if phoneNumber != "" { | ||
33 | - phoneTextField.text = phoneNumber | ||
34 | - } | 31 | + NotificationCenter.default.addObserver(self, selector: #selector(LoginViewController.keyboardWIllChange(_:)), name: NSNotification.Name.UIKeyboardWillChangeFrame, object: nil) |
32 | + NotificationCenter.default.addObserver(self, selector: #selector(LoginViewController.getPhoneNumber(_:)), name: NSNotification.Name(rawValue: MyPhoneNumberNotification.getPhoneNumber), object: nil) | ||
35 | } | 33 | } |
36 | // MARK: - 根据键盘调整高度 | 34 | // MARK: - 根据键盘调整高度 |
37 | @objc func keyboardWIllChange(_ noti: Notification){ | 35 | @objc func keyboardWIllChange(_ noti: Notification){ |
@@ -40,9 +38,13 @@ class LoginViewController: UIViewController,UITextFieldDelegate { | @@ -40,9 +38,13 @@ class LoginViewController: UIViewController,UITextFieldDelegate { | ||
40 | if endFrame?.origin.y == getScreenHeight() { | 38 | if endFrame?.origin.y == getScreenHeight() { |
41 | topView.constant = (getScreenHeight()-325)/3 | 39 | topView.constant = (getScreenHeight()-325)/3 |
42 | }else{ | 40 | }else{ |
43 | - topView.constant = (endFrame?.origin.y)!-325 | 41 | + topView.constant = (endFrame?.origin.y)!-375 |
44 | } | 42 | } |
45 | } | 43 | } |
44 | + @objc func getPhoneNumber(_ noti: Notification){ | ||
45 | + let userInfo:NSDictionary=noti.userInfo! as NSDictionary | ||
46 | + phoneTextField.text = userInfo["phoneNumber"] as? String | ||
47 | + } | ||
46 | 48 | ||
47 | // MARK: - 密码显示与否 | 49 | // MARK: - 密码显示与否 |
48 | @IBAction func passwordHiddenAction(_ sender: UIButton) { | 50 | @IBAction func passwordHiddenAction(_ sender: UIButton) { |
@@ -121,14 +123,15 @@ class LoginViewController: UIViewController,UITextFieldDelegate { | @@ -121,14 +123,15 @@ class LoginViewController: UIViewController,UITextFieldDelegate { | ||
121 | appDelegate.window!.makeToast("聊天服务登录失败,请连接网络重试") | 123 | appDelegate.window!.makeToast("聊天服务登录失败,请连接网络重试") |
122 | }else{ | 124 | }else{ |
123 | //云信登录成功 | 125 | //云信登录成功 |
124 | - self.dismiss(animated: true, completion: nil) | 126 | + self.navigationController?.popToRootViewController(animated: true) |
125 | } | 127 | } |
126 | } | 128 | } |
127 | } | 129 | } |
128 | 130 | ||
129 | // MARK: - 注册页面跳转 | 131 | // MARK: - 注册页面跳转 |
130 | @IBAction func registerAction(_ sender: UIButton) { | 132 | @IBAction func registerAction(_ sender: UIButton) { |
131 | - self.navigationController?.popViewController(animated: true) | 133 | + let vc = Story.instantiateViewControllerWithIdentifier("RegisterViewController", storyName: "My") as! RegisterViewController |
134 | + self.navigationController?.pushViewController(vc, animated: true) | ||
132 | } | 135 | } |
133 | // MARK: - 找回密码 | 136 | // MARK: - 找回密码 |
134 | @IBAction func getPasswordAction(_ sender: UIButton) { | 137 | @IBAction func getPasswordAction(_ sender: UIButton) { |
ParentAssistant/ParentAssistant/Classes/controllers/my/Controller/My.storyboard
@@ -23,7 +23,7 @@ | @@ -23,7 +23,7 @@ | ||
23 | <view clipsSubviews="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="a5f-wj-3dN"> | 23 | <view clipsSubviews="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="a5f-wj-3dN"> |
24 | <rect key="frame" x="0.0" y="181" width="375" height="325"/> | 24 | <rect key="frame" x="0.0" y="181" width="375" height="325"/> |
25 | <subviews> | 25 | <subviews> |
26 | - <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_image" translatesAutoresizingMaskIntoConstraints="NO" id="gLu-cN-6Yp"> | 26 | + <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="defphoto" translatesAutoresizingMaskIntoConstraints="NO" id="gLu-cN-6Yp"> |
27 | <rect key="frame" x="157.5" y="0.0" width="60" height="60"/> | 27 | <rect key="frame" x="157.5" y="0.0" width="60" height="60"/> |
28 | <constraints> | 28 | <constraints> |
29 | <constraint firstAttribute="width" constant="60" id="AhV-UG-PjF"/> | 29 | <constraint firstAttribute="width" constant="60" id="AhV-UG-PjF"/> |
@@ -32,7 +32,7 @@ | @@ -32,7 +32,7 @@ | ||
32 | <userDefinedRuntimeAttributes> | 32 | <userDefinedRuntimeAttributes> |
33 | <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/> | 33 | <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/> |
34 | <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> | 34 | <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> |
35 | - <integer key="value" value="5"/> | 35 | + <integer key="value" value="30"/> |
36 | </userDefinedRuntimeAttribute> | 36 | </userDefinedRuntimeAttribute> |
37 | </userDefinedRuntimeAttributes> | 37 | </userDefinedRuntimeAttributes> |
38 | </imageView> | 38 | </imageView> |
@@ -181,7 +181,7 @@ | @@ -181,7 +181,7 @@ | ||
181 | <constraint firstAttribute="height" constant="40" id="y2X-Wd-k77"/> | 181 | <constraint firstAttribute="height" constant="40" id="y2X-Wd-k77"/> |
182 | </constraints> | 182 | </constraints> |
183 | <state key="normal" title="注册"> | 183 | <state key="normal" title="注册"> |
184 | - <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | 184 | + <color key="titleColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
185 | </state> | 185 | </state> |
186 | <userDefinedRuntimeAttributes> | 186 | <userDefinedRuntimeAttributes> |
187 | <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/> | 187 | <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/> |
@@ -196,14 +196,14 @@ | @@ -196,14 +196,14 @@ | ||
196 | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="3No-8C-Khf"> | 196 | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="3No-8C-Khf"> |
197 | <rect key="frame" x="8" y="306" width="359" height="19"/> | 197 | <rect key="frame" x="8" y="306" width="359" height="19"/> |
198 | <subviews> | 198 | <subviews> |
199 | - <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="已注册,直接登录" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="TUw-vF-sIc"> | ||
200 | - <rect key="frame" x="0.0" y="0.0" width="205" height="19"/> | 199 | + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="已注册,直接登录" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="TUw-vF-sIc"> |
200 | + <rect key="frame" x="0.0" y="0.0" width="114.5" height="19"/> | ||
201 | <fontDescription key="fontDescription" type="system" pointSize="14"/> | 201 | <fontDescription key="fontDescription" type="system" pointSize="14"/> |
202 | <color key="textColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> | 202 | <color key="textColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> |
203 | <nil key="highlightedColor"/> | 203 | <nil key="highlightedColor"/> |
204 | </label> | 204 | </label> |
205 | - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="YZ4-eP-Zus"> | ||
206 | - <rect key="frame" x="205" y="0.0" width="154" height="19"/> | 205 | + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="YZ4-eP-Zus"> |
206 | + <rect key="frame" x="123" y="0.0" width="236" height="19"/> | ||
207 | <fontDescription key="fontDescription" type="system" pointSize="14"/> | 207 | <fontDescription key="fontDescription" type="system" pointSize="14"/> |
208 | <state key="normal" title="登录"/> | 208 | <state key="normal" title="登录"/> |
209 | <connections> | 209 | <connections> |
@@ -213,14 +213,13 @@ | @@ -213,14 +213,13 @@ | ||
213 | </subviews> | 213 | </subviews> |
214 | <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | 214 | <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> |
215 | <constraints> | 215 | <constraints> |
216 | - <constraint firstItem="TUw-vF-sIc" firstAttribute="width" secondItem="3No-8C-Khf" secondAttribute="width" multiplier="4:7" id="0S3-e9-Pm6"/> | ||
217 | <constraint firstAttribute="height" constant="19" id="6xe-Im-rue"/> | 216 | <constraint firstAttribute="height" constant="19" id="6xe-Im-rue"/> |
218 | <constraint firstAttribute="bottom" secondItem="YZ4-eP-Zus" secondAttribute="bottom" id="9fU-TJ-3nM"/> | 217 | <constraint firstAttribute="bottom" secondItem="YZ4-eP-Zus" secondAttribute="bottom" id="9fU-TJ-3nM"/> |
219 | <constraint firstItem="TUw-vF-sIc" firstAttribute="leading" secondItem="3No-8C-Khf" secondAttribute="leading" id="Pxw-ua-3ch"/> | 218 | <constraint firstItem="TUw-vF-sIc" firstAttribute="leading" secondItem="3No-8C-Khf" secondAttribute="leading" id="Pxw-ua-3ch"/> |
220 | <constraint firstItem="TUw-vF-sIc" firstAttribute="top" secondItem="3No-8C-Khf" secondAttribute="top" id="Q23-ca-Ct3"/> | 219 | <constraint firstItem="TUw-vF-sIc" firstAttribute="top" secondItem="3No-8C-Khf" secondAttribute="top" id="Q23-ca-Ct3"/> |
221 | <constraint firstAttribute="trailing" secondItem="YZ4-eP-Zus" secondAttribute="trailing" id="StK-wf-UFf"/> | 220 | <constraint firstAttribute="trailing" secondItem="YZ4-eP-Zus" secondAttribute="trailing" id="StK-wf-UFf"/> |
222 | - <constraint firstItem="YZ4-eP-Zus" firstAttribute="leading" secondItem="TUw-vF-sIc" secondAttribute="trailing" id="Stg-cL-NuI"/> | ||
223 | <constraint firstItem="YZ4-eP-Zus" firstAttribute="top" secondItem="3No-8C-Khf" secondAttribute="top" id="csH-Mm-TFr"/> | 221 | <constraint firstItem="YZ4-eP-Zus" firstAttribute="top" secondItem="3No-8C-Khf" secondAttribute="top" id="csH-Mm-TFr"/> |
222 | + <constraint firstItem="YZ4-eP-Zus" firstAttribute="leading" secondItem="TUw-vF-sIc" secondAttribute="trailing" constant="8" id="dUi-pP-48X"/> | ||
224 | <constraint firstAttribute="bottom" secondItem="TUw-vF-sIc" secondAttribute="bottom" id="etM-WV-v9B"/> | 223 | <constraint firstAttribute="bottom" secondItem="TUw-vF-sIc" secondAttribute="bottom" id="etM-WV-v9B"/> |
225 | </constraints> | 224 | </constraints> |
226 | </view> | 225 | </view> |
@@ -264,7 +263,7 @@ | @@ -264,7 +263,7 @@ | ||
264 | </viewController> | 263 | </viewController> |
265 | <placeholder placeholderIdentifier="IBFirstResponder" id="ebc-9u-7ih" userLabel="First Responder" sceneMemberID="firstResponder"/> | 264 | <placeholder placeholderIdentifier="IBFirstResponder" id="ebc-9u-7ih" userLabel="First Responder" sceneMemberID="firstResponder"/> |
266 | </objects> | 265 | </objects> |
267 | - <point key="canvasLocation" x="-1308" y="-70"/> | 266 | + <point key="canvasLocation" x="-1308" y="-70.614692653673174"/> |
268 | </scene> | 267 | </scene> |
269 | <!--修改密码--> | 268 | <!--修改密码--> |
270 | <scene sceneID="3yG-jT-RDd"> | 269 | <scene sceneID="3yG-jT-RDd"> |
@@ -277,7 +276,7 @@ | @@ -277,7 +276,7 @@ | ||
277 | <view clipsSubviews="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="9Ce-ZJ-VAH"> | 276 | <view clipsSubviews="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="9Ce-ZJ-VAH"> |
278 | <rect key="frame" x="0.0" y="224" width="375" height="325"/> | 277 | <rect key="frame" x="0.0" y="224" width="375" height="325"/> |
279 | <subviews> | 278 | <subviews> |
280 | - <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_image" translatesAutoresizingMaskIntoConstraints="NO" id="Jy5-it-uFI"> | 279 | + <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="defphoto" translatesAutoresizingMaskIntoConstraints="NO" id="Jy5-it-uFI"> |
281 | <rect key="frame" x="157.5" y="0.0" width="60" height="60"/> | 280 | <rect key="frame" x="157.5" y="0.0" width="60" height="60"/> |
282 | <constraints> | 281 | <constraints> |
283 | <constraint firstAttribute="width" secondItem="Jy5-it-uFI" secondAttribute="height" multiplier="1:1" id="3m6-TK-U6H"/> | 282 | <constraint firstAttribute="width" secondItem="Jy5-it-uFI" secondAttribute="height" multiplier="1:1" id="3m6-TK-U6H"/> |
@@ -286,7 +285,7 @@ | @@ -286,7 +285,7 @@ | ||
286 | <userDefinedRuntimeAttributes> | 285 | <userDefinedRuntimeAttributes> |
287 | <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/> | 286 | <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/> |
288 | <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> | 287 | <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> |
289 | - <integer key="value" value="5"/> | 288 | + <integer key="value" value="30"/> |
290 | </userDefinedRuntimeAttribute> | 289 | </userDefinedRuntimeAttribute> |
291 | </userDefinedRuntimeAttributes> | 290 | </userDefinedRuntimeAttributes> |
292 | </imageView> | 291 | </imageView> |
@@ -552,7 +551,7 @@ | @@ -552,7 +551,7 @@ | ||
552 | <view clipsSubviews="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="iNa-Xg-qR8"> | 551 | <view clipsSubviews="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="iNa-Xg-qR8"> |
553 | <rect key="frame" x="0.0" y="148" width="375" height="325"/> | 552 | <rect key="frame" x="0.0" y="148" width="375" height="325"/> |
554 | <subviews> | 553 | <subviews> |
555 | - <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_image" translatesAutoresizingMaskIntoConstraints="NO" id="MuP-eU-u8t"> | 554 | + <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="defphoto" translatesAutoresizingMaskIntoConstraints="NO" id="MuP-eU-u8t"> |
556 | <rect key="frame" x="157.5" y="0.0" width="60" height="60"/> | 555 | <rect key="frame" x="157.5" y="0.0" width="60" height="60"/> |
557 | <constraints> | 556 | <constraints> |
558 | <constraint firstAttribute="width" secondItem="MuP-eU-u8t" secondAttribute="height" multiplier="1:1" id="2dS-lO-wew"/> | 557 | <constraint firstAttribute="width" secondItem="MuP-eU-u8t" secondAttribute="height" multiplier="1:1" id="2dS-lO-wew"/> |
@@ -561,7 +560,7 @@ | @@ -561,7 +560,7 @@ | ||
561 | <userDefinedRuntimeAttributes> | 560 | <userDefinedRuntimeAttributes> |
562 | <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/> | 561 | <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/> |
563 | <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> | 562 | <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> |
564 | - <integer key="value" value="5"/> | 563 | + <integer key="value" value="30"/> |
565 | </userDefinedRuntimeAttribute> | 564 | </userDefinedRuntimeAttribute> |
566 | </userDefinedRuntimeAttributes> | 565 | </userDefinedRuntimeAttributes> |
567 | </imageView> | 566 | </imageView> |
@@ -678,17 +677,14 @@ | @@ -678,17 +677,14 @@ | ||
678 | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="X9h-K7-0bg"> | 677 | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="X9h-K7-0bg"> |
679 | <rect key="frame" x="8" y="268" width="359" height="19"/> | 678 | <rect key="frame" x="8" y="268" width="359" height="19"/> |
680 | <subviews> | 679 | <subviews> |
681 | - <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="还没有账号,快速" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fRW-Sg-QbI"> | ||
682 | - <rect key="frame" x="0.0" y="0.0" width="185.5" height="19"/> | 680 | + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="还没有账号,快速" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fRW-Sg-QbI"> |
681 | + <rect key="frame" x="0.0" y="0.0" width="114.5" height="19"/> | ||
683 | <fontDescription key="fontDescription" type="system" pointSize="14"/> | 682 | <fontDescription key="fontDescription" type="system" pointSize="14"/> |
684 | <color key="textColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> | 683 | <color key="textColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> |
685 | <nil key="highlightedColor"/> | 684 | <nil key="highlightedColor"/> |
686 | </label> | 685 | </label> |
687 | - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="fzA-Ya-qRu"> | ||
688 | - <rect key="frame" x="185" y="0.0" width="30" height="19"/> | ||
689 | - <constraints> | ||
690 | - <constraint firstAttribute="width" constant="30" id="FTv-oS-l1N"/> | ||
691 | - </constraints> | 686 | + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="fzA-Ya-qRu"> |
687 | + <rect key="frame" x="114" y="0.0" width="101" height="19"/> | ||
692 | <fontDescription key="fontDescription" type="system" pointSize="14"/> | 688 | <fontDescription key="fontDescription" type="system" pointSize="14"/> |
693 | <state key="normal" title="注册"/> | 689 | <state key="normal" title="注册"/> |
694 | <connections> | 690 | <connections> |
@@ -698,7 +694,7 @@ | @@ -698,7 +694,7 @@ | ||
698 | <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="right" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Bh4-Vg-DUl"> | 694 | <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="right" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Bh4-Vg-DUl"> |
699 | <rect key="frame" x="215.5" y="0.0" width="143.5" height="19"/> | 695 | <rect key="frame" x="215.5" y="0.0" width="143.5" height="19"/> |
700 | <fontDescription key="fontDescription" type="system" pointSize="14"/> | 696 | <fontDescription key="fontDescription" type="system" pointSize="14"/> |
701 | - <state key="normal" title="找回密码"/> | 697 | + <state key="normal" title="忘记密码"/> |
702 | <connections> | 698 | <connections> |
703 | <action selector="getPasswordAction:" destination="UG5-bJ-YrY" eventType="touchUpInside" id="EJR-6a-h6E"/> | 699 | <action selector="getPasswordAction:" destination="UG5-bJ-YrY" eventType="touchUpInside" id="EJR-6a-h6E"/> |
704 | <action selector="loginAction:" destination="Uds-ft-2AX" eventType="touchUpInside" id="WkS-hX-ran"/> | 700 | <action selector="loginAction:" destination="Uds-ft-2AX" eventType="touchUpInside" id="WkS-hX-ran"/> |
@@ -1608,7 +1604,6 @@ | @@ -1608,7 +1604,6 @@ | ||
1608 | </scenes> | 1604 | </scenes> |
1609 | <resources> | 1605 | <resources> |
1610 | <image name="defphoto" width="128" height="128"/> | 1606 | <image name="defphoto" width="128" height="128"/> |
1611 | - <image name="icon_image" width="512" height="512"/> | ||
1612 | <image name="my_currentInf_gendernoselected" width="16" height="16"/> | 1607 | <image name="my_currentInf_gendernoselected" width="16" height="16"/> |
1613 | <image name="my_headerView_backgroundimageView" width="375" height="139"/> | 1608 | <image name="my_headerView_backgroundimageView" width="375" height="139"/> |
1614 | <image name="my_order_message" width="52" height="36"/> | 1609 | <image name="my_order_message" width="52" height="36"/> |
ParentAssistant/ParentAssistant/Classes/controllers/my/Controller/MyViewController.swift
@@ -27,7 +27,6 @@ class MyViewController: UIViewController { | @@ -27,7 +27,6 @@ class MyViewController: UIViewController { | ||
27 | } | 27 | } |
28 | // MARK: - 设置控件属性 | 28 | // MARK: - 设置控件属性 |
29 | func layoutSubViews(){ | 29 | func layoutSubViews(){ |
30 | - self.navigationController?.navigationBar.barStyle = UIBarStyle.default// UIColorFromRGB(0xC5DAFF) | ||
31 | let backImage = UIImage(named: "navigationBar_backgrounImage") | 30 | let backImage = UIImage(named: "navigationBar_backgrounImage") |
32 | self.navigationController?.navigationBar.setBackgroundImage(backImage, for: UIBarMetrics.default) | 31 | self.navigationController?.navigationBar.setBackgroundImage(backImage, for: UIBarMetrics.default) |
33 | // MARK: - 是否是iPhoneX顶部刘海 | 32 | // MARK: - 是否是iPhoneX顶部刘海 |
@@ -72,7 +71,7 @@ class MyViewController: UIViewController { | @@ -72,7 +71,7 @@ class MyViewController: UIViewController { | ||
72 | let info = AccountManager.shared | 71 | let info = AccountManager.shared |
73 | personNameLabel.text = info.name() | 72 | personNameLabel.text = info.name() |
74 | personNumberLabel.text = info.phone() | 73 | personNumberLabel.text = info.phone() |
75 | - personIconImageView.sd_setImage(with: URL(string: AccountManager.shared.photo().addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!), placeholderImage: UIImage(named: "defphoto")) | 74 | + personIconImageView.sd_setImage(with: URL(string: AccountManager.shared.photo().addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!), placeholderImage: UIImage(named: "my_defphoto")) |
76 | }else{ | 75 | }else{ |
77 | logoutBtn.isHidden = true | 76 | logoutBtn.isHidden = true |
78 | personNameLabel.isHidden = true | 77 | personNameLabel.isHidden = true |
@@ -80,14 +79,14 @@ class MyViewController: UIViewController { | @@ -80,14 +79,14 @@ class MyViewController: UIViewController { | ||
80 | loginBtn.isHidden = false | 79 | loginBtn.isHidden = false |
81 | currentInfoBtn.isHidden = true | 80 | currentInfoBtn.isHidden = true |
82 | headerBackGroundImageView.image = UIImage(named: "navigationBar_backgrounImage") | 81 | headerBackGroundImageView.image = UIImage(named: "navigationBar_backgrounImage") |
83 | - personIconImageView.image = UIImage(named: "defphoto") | 82 | + personIconImageView.image = UIImage(named: "my_defphoto") |
84 | } | 83 | } |
85 | currentInfoTableView.reloadData() | 84 | currentInfoTableView.reloadData() |
86 | } | 85 | } |
87 | // MARK: - 登录按钮点击方法 | 86 | // MARK: - 登录按钮点击方法 |
88 | @IBAction func showLoginAction(_ sender: UIButton) { | 87 | @IBAction func showLoginAction(_ sender: UIButton) { |
89 | - let vc = Story.instantiateViewControllerWithIdentifier("RegisterViewController", storyName: "My") as! RegisterViewController | ||
90 | - self.present(vc.wrapWithNavigationController(), animated: true, completion: nil) | 88 | + let vc = Story.instantiateViewControllerWithIdentifier("LoginViewController", storyName: "My") as! LoginViewController |
89 | + self.navigationController?.pushViewController(vc, animated: true) | ||
91 | } | 90 | } |
92 | 91 | ||
93 | // MARK: - 个人信息按钮点击方法 | 92 | // MARK: - 个人信息按钮点击方法 |
@@ -175,10 +174,13 @@ extension MyViewController: UITableViewDelegate,UITableViewDataSource{ | @@ -175,10 +174,13 @@ extension MyViewController: UITableViewDelegate,UITableViewDataSource{ | ||
175 | 174 | ||
176 | func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { | 175 | func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { |
177 | switch indexPath.row { | 176 | switch indexPath.row { |
178 | - case 0,3,5,6,7: | 177 | + case 5,6,7: |
179 | return 44 | 178 | return 44 |
180 | - case 1,2: | ||
181 | - if !AccountManager.shared.isOnline() || (AccountManager.shared.isOnline() && AccountManager.shared.name()=="葛建军") {//隐藏支付相关功能 | 179 | + case 0,1,2,3: |
180 | + if !AccountManager.shared.isOnline() { | ||
181 | + return 0 | ||
182 | + } | ||
183 | + if AccountManager.shared.isOnline() && AccountManager.shared.name()=="葛建军" && (indexPath.row == 1 || indexPath.row == 2){//隐藏支付相关功能 | ||
182 | return 0 | 184 | return 0 |
183 | }else{ | 185 | }else{ |
184 | return 44 | 186 | return 44 |
ParentAssistant/ParentAssistant/Classes/controllers/my/Controller/RegisterViewController.swift
@@ -26,7 +26,8 @@ class RegisterViewController: UIViewController,UITextFieldDelegate { | @@ -26,7 +26,8 @@ class RegisterViewController: UIViewController,UITextFieldDelegate { | ||
26 | } | 26 | } |
27 | // MARK: - 设置控件属性 | 27 | // MARK: - 设置控件属性 |
28 | func layoutSubViews(){ | 28 | func layoutSubViews(){ |
29 | - self.navigationController?.navigationBar.isHidden = true | 29 | + self.navigationController?.navigationBar.isHidden = false |
30 | + self.navigationItem.title = "注册" | ||
30 | getCodeBtn.layer.borderWidth = 1.0 | 31 | getCodeBtn.layer.borderWidth = 1.0 |
31 | getCodeBtn.layer.borderColor = UIColor.lightGray.cgColor | 32 | getCodeBtn.layer.borderColor = UIColor.lightGray.cgColor |
32 | topView.constant = (getScreenHeight()-325)/3 | 33 | topView.constant = (getScreenHeight()-325)/3 |
@@ -40,7 +41,7 @@ class RegisterViewController: UIViewController,UITextFieldDelegate { | @@ -40,7 +41,7 @@ class RegisterViewController: UIViewController,UITextFieldDelegate { | ||
40 | if endFrame?.origin.y == getScreenHeight() { | 41 | if endFrame?.origin.y == getScreenHeight() { |
41 | topView.constant = (getScreenHeight()-325)/3 | 42 | topView.constant = (getScreenHeight()-325)/3 |
42 | }else{ | 43 | }else{ |
43 | - topView.constant = (endFrame?.origin.y)!-325 | 44 | + topView.constant = (endFrame?.origin.y)!-375 |
44 | } | 45 | } |
45 | } | 46 | } |
46 | // MARK: - 获取验证码 | 47 | // MARK: - 获取验证码 |
@@ -107,14 +108,67 @@ class RegisterViewController: UIViewController,UITextFieldDelegate { | @@ -107,14 +108,67 @@ class RegisterViewController: UIViewController,UITextFieldDelegate { | ||
107 | //登录并返回页面 | 108 | //登录并返回页面 |
108 | let alertVC = UIAlertController(title: "提示", message: "您已注册成功", preferredStyle: UIAlertControllerStyle.alert) | 109 | let alertVC = UIAlertController(title: "提示", message: "您已注册成功", preferredStyle: UIAlertControllerStyle.alert) |
109 | let backBtn = UIAlertAction(title: "返回", style: UIAlertActionStyle.default) { (action) in | 110 | let backBtn = UIAlertAction(title: "返回", style: UIAlertActionStyle.default) { (action) in |
110 | - let vc = Story.instantiateViewControllerWithIdentifier("LoginViewController", storyName: "My") as! LoginViewController | ||
111 | - vc.phoneNumber = self.phoneTextField.text! | ||
112 | - self.navigationController?.pushViewController(vc, animated: true) | 111 | + NotificationCenter.default.post(name: Notification.Name(rawValue: MyPhoneNumberNotification.getPhoneNumber), object: nil, userInfo: ["phoneNumber":self.phoneTextField.text!]) |
112 | + self.navigationController?.popViewController(animated: true) | ||
113 | } | 113 | } |
114 | let showBtn = UIAlertAction(title: "进入首页", style: UIAlertActionStyle.default) { (action) in | 114 | let showBtn = UIAlertAction(title: "进入首页", style: UIAlertActionStyle.default) { (action) in |
115 | - self.dismiss(animated: true) { | ||
116 | - //登录 | ||
117 | - } | 115 | + self.navigationController?.popToRootViewController(animated: true) |
116 | + //登录 | ||
117 | + SVProgressHUD.show(withStatus: "登录中...") | ||
118 | + HTTPServer.shared.login(completionHandler: { (str, error) in | ||
119 | + SVProgressHUD.dismiss() | ||
120 | + let json=JSON.fromString(str) | ||
121 | + if let ret=json{ | ||
122 | + let er=ret["error"].string | ||
123 | + if let errorStr=er{ | ||
124 | + let Strings=errorStr.components(separatedBy: ":") | ||
125 | + if Strings.count >= 2 { | ||
126 | + switch Strings[1] { | ||
127 | + //用户关联多个身份,请使用学事号登录:100 | ||
128 | + case "101"://用户认证身份不存在:101 | ||
129 | + appDelegate.window!.makeToast("用户认证身份不存在,请进行账号激活。") | ||
130 | + break | ||
131 | + //用户帐号或密码错误:102 | ||
132 | + case "103":// 用户不存在:103 | ||
133 | + appDelegate.window!.makeToast("该号码不存在,请联系客服400-826-2468") | ||
134 | + break | ||
135 | + default: | ||
136 | + appDelegate.window!.makeToast(errorStr) | ||
137 | + break | ||
138 | + } | ||
139 | + }else{ | ||
140 | + appDelegate.window!.makeToast(errorStr) | ||
141 | + } | ||
142 | + }else if ret["access_token"].stringValue != ""{ | ||
143 | + AccountManager.shared.setTokenInfo(tokenInfo: ret) | ||
144 | + AccountManager.shared.saveToken(tokenInfo: ret) | ||
145 | + AccountManager.shared.refreshUserInfo(self.phoneTextField.text!, completionHandler: { (finish) in | ||
146 | + if finish{ | ||
147 | + let ID=AccountManager.shared.rawUserInfo!.contentData()["userid"].stringValue | ||
148 | + YXMessageManager.share.loginWithYX(account: ID, token: ID.md5()) { (success) in | ||
149 | + SVProgressHUD.dismiss() | ||
150 | + if !success { | ||
151 | + AccountManager.shared.logOut() | ||
152 | + appDelegate.window!.makeToast("聊天服务登录失败,请连接网络重试") | ||
153 | + }else{ | ||
154 | + //云信登录成功 | ||
155 | + self.dismiss(animated: true, completion: nil) | ||
156 | + } | ||
157 | + } | ||
158 | + }else{ | ||
159 | + appDelegate.window!.makeToast("身份获取失败") | ||
160 | + SVProgressHUD.dismiss() | ||
161 | + } | ||
162 | + }) | ||
163 | + }else{ | ||
164 | + SVProgressHUD.dismiss() | ||
165 | + appDelegate.window!.makeToast("登录失败,请稍后重试") | ||
166 | + } | ||
167 | + }else{ | ||
168 | + SVProgressHUD.dismiss() | ||
169 | + appDelegate.window!.makeToast("登录失败") | ||
170 | + } | ||
171 | + }, phone: self.phoneTextField.text!, password: self.passwordTextField.text!) | ||
118 | } | 172 | } |
119 | alertVC.addAction(backBtn) | 173 | alertVC.addAction(backBtn) |
120 | alertVC.addAction(showBtn) | 174 | alertVC.addAction(showBtn) |
@@ -135,8 +189,7 @@ class RegisterViewController: UIViewController,UITextFieldDelegate { | @@ -135,8 +189,7 @@ class RegisterViewController: UIViewController,UITextFieldDelegate { | ||
135 | // MARK: - 登录页面跳转 | 189 | // MARK: - 登录页面跳转 |
136 | 190 | ||
137 | @IBAction func loginAction(_ sender: UIButton) { | 191 | @IBAction func loginAction(_ sender: UIButton) { |
138 | - let vc = Story.instantiateViewControllerWithIdentifier("LoginViewController", storyName: "My") as! LoginViewController | ||
139 | - self.navigationController?.pushViewController(vc, animated: true) | 192 | + self.navigationController?.popViewController(animated: true) |
140 | } | 193 | } |
141 | 194 | ||
142 | 195 |
ParentAssistant/ParentAssistant/Classes/controllers/my/Model/MyViewControllerModel.swift
ParentAssistant/ParentAssistant/Classes/controllers/report/View/ReportHeaderView.xib
@@ -20,7 +20,7 @@ | @@ -20,7 +20,7 @@ | ||
20 | <rect key="frame" x="20" y="7" width="46" height="30"/> | 20 | <rect key="frame" x="20" y="7" width="46" height="30"/> |
21 | <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> | 21 | <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> |
22 | <state key="normal" title="马伯骞"> | 22 | <state key="normal" title="马伯骞"> |
23 | - <color key="titleColor" white="0.0" alpha="1" colorSpace="calibratedWhite"/> | 23 | + <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> |
24 | </state> | 24 | </state> |
25 | <connections> | 25 | <connections> |
26 | <action selector="changeStudentAction:" destination="4WE-cx-977" eventType="touchUpInside" id="Dua-XZ-hMB"/> | 26 | <action selector="changeStudentAction:" destination="4WE-cx-977" eventType="touchUpInside" id="Dua-XZ-hMB"/> |
@@ -30,7 +30,7 @@ | @@ -30,7 +30,7 @@ | ||
30 | <rect key="frame" x="434" y="7" width="31" height="30"/> | 30 | <rect key="frame" x="434" y="7" width="31" height="30"/> |
31 | <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> | 31 | <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> |
32 | <state key="normal" title="筛选"> | 32 | <state key="normal" title="筛选"> |
33 | - <color key="titleColor" white="0.0" alpha="1" colorSpace="calibratedWhite"/> | 33 | + <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> |
34 | </state> | 34 | </state> |
35 | <connections> | 35 | <connections> |
36 | <action selector="changeTypeAction:" destination="4WE-cx-977" eventType="touchUpInside" id="XFz-ca-od2"/> | 36 | <action selector="changeTypeAction:" destination="4WE-cx-977" eventType="touchUpInside" id="XFz-ca-od2"/> |
@@ -40,7 +40,7 @@ | @@ -40,7 +40,7 @@ | ||
40 | <rect key="frame" x="191" y="7" width="102" height="30"/> | 40 | <rect key="frame" x="191" y="7" width="102" height="30"/> |
41 | <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> | 41 | <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> |
42 | <state key="normal" title="12月29日"> | 42 | <state key="normal" title="12月29日"> |
43 | - <color key="titleColor" white="0.0" alpha="1" colorSpace="calibratedWhite"/> | 43 | + <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> |
44 | </state> | 44 | </state> |
45 | <connections> | 45 | <connections> |
46 | <action selector="changeDateAction:" destination="4WE-cx-977" eventType="touchUpInside" id="pCF-3R-0zv"/> | 46 | <action selector="changeDateAction:" destination="4WE-cx-977" eventType="touchUpInside" id="pCF-3R-0zv"/> |
ParentAssistant/ParentAssistant/Classes/util/utils.swift
@@ -574,10 +574,10 @@ extension UIViewController{ | @@ -574,10 +574,10 @@ extension UIViewController{ | ||
574 | func configTheme(){ | 574 | func configTheme(){ |
575 | self.navigationItem.title=self.navigationController?.title | 575 | self.navigationItem.title=self.navigationController?.title |
576 | self.navigationController?.navigationBar.barTintColor=Theme.topBarColor() | 576 | self.navigationController?.navigationBar.barTintColor=Theme.topBarColor() |
577 | - self.navigationController?.navigationBar.tintColor=UIColor.black | 577 | + self.navigationController?.navigationBar.tintColor=UIColor.white |
578 | self.navigationController?.navigationBar.isTranslucent=false | 578 | self.navigationController?.navigationBar.isTranslucent=false |
579 | let textAttributes = NSMutableDictionary(capacity:1) | 579 | let textAttributes = NSMutableDictionary(capacity:1) |
580 | - textAttributes.setObject(UIColor.black, forKey: NSAttributedStringKey.foregroundColor as NSCopying) | 580 | + textAttributes.setObject(UIColor.white, forKey: NSAttributedStringKey.foregroundColor as NSCopying) |
581 | self.navigationController?.navigationBar.titleTextAttributes=textAttributes as! [AnyHashable: Any] as? [NSAttributedStringKey : Any] | 581 | self.navigationController?.navigationBar.titleTextAttributes=textAttributes as! [AnyHashable: Any] as? [NSAttributedStringKey : Any] |
582 | } | 582 | } |
583 | ///套上UINavigationController | 583 | ///套上UINavigationController |
ParentAssistant/ParentAssistant/Supporting Files/Assets.xcassets/evaluation/evaluation_icon_pushDown.imageset/Contents.json
ParentAssistant/ParentAssistant/Supporting Files/Assets.xcassets/evaluation/evaluation_icon_pushDown.imageset/down.png
0 → 100644
3.88 KB
ParentAssistant/ParentAssistant/Supporting Files/Assets.xcassets/evaluation/evaluation_icon_pushDown.imageset/下拉.png
603 Bytes
ParentAssistant/ParentAssistant/Supporting Files/Assets.xcassets/my/my_defphoto.imageset/Contents.json
0 → 100644
@@ -0,0 +1,21 @@ | @@ -0,0 +1,21 @@ | ||
1 | +{ | ||
2 | + "images" : [ | ||
3 | + { | ||
4 | + "idiom" : "universal", | ||
5 | + "scale" : "1x" | ||
6 | + }, | ||
7 | + { | ||
8 | + "idiom" : "universal", | ||
9 | + "filename" : "未登录.png", | ||
10 | + "scale" : "2x" | ||
11 | + }, | ||
12 | + { | ||
13 | + "idiom" : "universal", | ||
14 | + "scale" : "3x" | ||
15 | + } | ||
16 | + ], | ||
17 | + "info" : { | ||
18 | + "version" : 1, | ||
19 | + "author" : "xcode" | ||
20 | + } | ||
21 | +} | ||
0 | \ No newline at end of file | 22 | \ No newline at end of file |
ParentAssistant/ParentAssistant/Supporting Files/Assets.xcassets/my/my_defphoto.imageset/未登录.png
0 → 100644
3.95 KB
ParentAssistant/ParentAssistant/Supporting Files/Base.lproj/Main.storyboard
@@ -50,7 +50,7 @@ | @@ -50,7 +50,7 @@ | ||
50 | </collectionView> | 50 | </collectionView> |
51 | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="hb2-3p-n32"> | 51 | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="hb2-3p-n32"> |
52 | <rect key="frame" x="0.0" y="100" width="359" height="1"/> | 52 | <rect key="frame" x="0.0" y="100" width="359" height="1"/> |
53 | - <color key="backgroundColor" white="0.66666666669999997" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> | 53 | + <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/> |
54 | <constraints> | 54 | <constraints> |
55 | <constraint firstAttribute="height" constant="1" id="ocV-Mf-9Bd"/> | 55 | <constraint firstAttribute="height" constant="1" id="ocV-Mf-9Bd"/> |
56 | </constraints> | 56 | </constraints> |
@@ -64,10 +64,11 @@ | @@ -64,10 +64,11 @@ | ||
64 | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="CKI-XD-Eo7"> | 64 | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="CKI-XD-Eo7"> |
65 | <rect key="frame" x="14.5" y="49.5" width="150" height="150"/> | 65 | <rect key="frame" x="14.5" y="49.5" width="150" height="150"/> |
66 | <subviews> | 66 | <subviews> |
67 | - <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="evaluation_icon_training" translatesAutoresizingMaskIntoConstraints="NO" id="jM3-pe-HNZ"> | ||
68 | - <rect key="frame" x="22.5" y="8" width="105" height="105"/> | 67 | + <imageView userInteractionEnabled="NO" contentMode="center" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="evaluation_icon_training" translatesAutoresizingMaskIntoConstraints="NO" id="jM3-pe-HNZ"> |
68 | + <rect key="frame" x="50" y="50" width="50" height="50"/> | ||
69 | <constraints> | 69 | <constraints> |
70 | <constraint firstAttribute="width" secondItem="jM3-pe-HNZ" secondAttribute="height" multiplier="1:1" id="9C5-F1-Q52"/> | 70 | <constraint firstAttribute="width" secondItem="jM3-pe-HNZ" secondAttribute="height" multiplier="1:1" id="9C5-F1-Q52"/> |
71 | + <constraint firstAttribute="width" constant="50" id="OAh-S9-pJU"/> | ||
71 | </constraints> | 72 | </constraints> |
72 | </imageView> | 73 | </imageView> |
73 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="专项训练" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="lMI-9m-Zal"> | 74 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="专项训练" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="lMI-9m-Zal"> |
@@ -79,15 +80,24 @@ | @@ -79,15 +80,24 @@ | ||
79 | <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | 80 | <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/> |
80 | <nil key="highlightedColor"/> | 81 | <nil key="highlightedColor"/> |
81 | </label> | 82 | </label> |
83 | + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="DjB-iQ-LaT"> | ||
84 | + <rect key="frame" x="0.0" y="0.0" width="150" height="150"/> | ||
85 | + <connections> | ||
86 | + <action selector="specialTrainingAction:" destination="BYZ-38-t0r" eventType="touchUpInside" id="0Nl-aa-Vuk"/> | ||
87 | + </connections> | ||
88 | + </button> | ||
82 | </subviews> | 89 | </subviews> |
83 | <color key="backgroundColor" red="0.39705835388445299" green="1" blue="0.97920779819417048" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> | 90 | <color key="backgroundColor" red="0.39705835388445299" green="1" blue="0.97920779819417048" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
84 | <constraints> | 91 | <constraints> |
85 | - <constraint firstItem="jM3-pe-HNZ" firstAttribute="top" secondItem="CKI-XD-Eo7" secondAttribute="top" constant="8" id="22U-Js-vpV"/> | ||
86 | - <constraint firstItem="lMI-9m-Zal" firstAttribute="top" secondItem="jM3-pe-HNZ" secondAttribute="bottom" constant="8" id="3Kt-US-NJz"/> | 92 | + <constraint firstItem="lMI-9m-Zal" firstAttribute="top" secondItem="jM3-pe-HNZ" secondAttribute="bottom" constant="21" id="2yg-E5-PY1"/> |
93 | + <constraint firstItem="DjB-iQ-LaT" firstAttribute="leading" secondItem="CKI-XD-Eo7" secondAttribute="leading" id="4dA-Mq-Ul4"/> | ||
94 | + <constraint firstItem="DjB-iQ-LaT" firstAttribute="top" secondItem="CKI-XD-Eo7" secondAttribute="top" id="D8R-bj-gd0"/> | ||
95 | + <constraint firstItem="jM3-pe-HNZ" firstAttribute="centerY" secondItem="CKI-XD-Eo7" secondAttribute="centerY" id="HP1-hk-di8"/> | ||
96 | + <constraint firstAttribute="trailing" secondItem="DjB-iQ-LaT" secondAttribute="trailing" id="OIA-L4-g1n"/> | ||
87 | <constraint firstAttribute="width" constant="150" id="RGQ-Uh-sQh"/> | 97 | <constraint firstAttribute="width" constant="150" id="RGQ-Uh-sQh"/> |
88 | - <constraint firstAttribute="bottom" secondItem="lMI-9m-Zal" secondAttribute="bottom" constant="8" id="YuU-rd-fZY"/> | ||
89 | <constraint firstItem="jM3-pe-HNZ" firstAttribute="centerX" secondItem="CKI-XD-Eo7" secondAttribute="centerX" id="fPw-Rq-f06"/> | 98 | <constraint firstItem="jM3-pe-HNZ" firstAttribute="centerX" secondItem="CKI-XD-Eo7" secondAttribute="centerX" id="fPw-Rq-f06"/> |
90 | <constraint firstItem="lMI-9m-Zal" firstAttribute="centerX" secondItem="CKI-XD-Eo7" secondAttribute="centerX" id="mOJ-4Z-xW1"/> | 99 | <constraint firstItem="lMI-9m-Zal" firstAttribute="centerX" secondItem="CKI-XD-Eo7" secondAttribute="centerX" id="mOJ-4Z-xW1"/> |
100 | + <constraint firstAttribute="bottom" secondItem="DjB-iQ-LaT" secondAttribute="bottom" id="pta-jf-lKE"/> | ||
91 | <constraint firstAttribute="width" secondItem="CKI-XD-Eo7" secondAttribute="height" multiplier="1:1" id="qLV-s3-y6S"/> | 101 | <constraint firstAttribute="width" secondItem="CKI-XD-Eo7" secondAttribute="height" multiplier="1:1" id="qLV-s3-y6S"/> |
92 | </constraints> | 102 | </constraints> |
93 | <userDefinedRuntimeAttributes> | 103 | <userDefinedRuntimeAttributes> |
@@ -121,21 +131,31 @@ | @@ -121,21 +131,31 @@ | ||
121 | <nil key="highlightedColor"/> | 131 | <nil key="highlightedColor"/> |
122 | </label> | 132 | </label> |
123 | <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="evaluation_icon_learningManagement" translatesAutoresizingMaskIntoConstraints="NO" id="9ln-nr-VzA"> | 133 | <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="evaluation_icon_learningManagement" translatesAutoresizingMaskIntoConstraints="NO" id="9ln-nr-VzA"> |
124 | - <rect key="frame" x="23" y="8" width="105" height="105"/> | 134 | + <rect key="frame" x="50.5" y="50" width="50" height="50"/> |
125 | <constraints> | 135 | <constraints> |
136 | + <constraint firstAttribute="width" constant="50" id="4wp-cr-ltM"/> | ||
126 | <constraint firstAttribute="width" secondItem="9ln-nr-VzA" secondAttribute="height" multiplier="1:1" id="DWe-xZ-kC3"/> | 137 | <constraint firstAttribute="width" secondItem="9ln-nr-VzA" secondAttribute="height" multiplier="1:1" id="DWe-xZ-kC3"/> |
127 | </constraints> | 138 | </constraints> |
128 | </imageView> | 139 | </imageView> |
140 | + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="ROd-Hw-Km6"> | ||
141 | + <rect key="frame" x="0.0" y="0.0" width="150" height="150"/> | ||
142 | + <connections> | ||
143 | + <action selector="detectionOfLearningAction:" destination="BYZ-38-t0r" eventType="touchUpInside" id="09k-le-jbg"/> | ||
144 | + </connections> | ||
145 | + </button> | ||
129 | </subviews> | 146 | </subviews> |
130 | <color key="backgroundColor" red="0.61174042456188515" green="0.82746609543490623" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> | 147 | <color key="backgroundColor" red="0.61174042456188515" green="0.82746609543490623" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
131 | <constraints> | 148 | <constraints> |
132 | - <constraint firstItem="9ln-nr-VzA" firstAttribute="top" secondItem="1z3-Uc-my7" secondAttribute="top" constant="8" id="5c5-L6-tOy"/> | ||
133 | - <constraint firstItem="2RT-ZA-65V" firstAttribute="top" secondItem="9ln-nr-VzA" secondAttribute="bottom" constant="8" id="ILS-qi-Pqa"/> | ||
134 | <constraint firstItem="9ln-nr-VzA" firstAttribute="centerX" secondItem="1z3-Uc-my7" secondAttribute="centerX" id="KfB-Qi-0ZA"/> | 149 | <constraint firstItem="9ln-nr-VzA" firstAttribute="centerX" secondItem="1z3-Uc-my7" secondAttribute="centerX" id="KfB-Qi-0ZA"/> |
150 | + <constraint firstItem="ROd-Hw-Km6" firstAttribute="leading" secondItem="1z3-Uc-my7" secondAttribute="leading" id="TCz-AY-Zqd"/> | ||
151 | + <constraint firstItem="9ln-nr-VzA" firstAttribute="centerY" secondItem="1z3-Uc-my7" secondAttribute="centerY" id="Tfz-CR-wHW"/> | ||
152 | + <constraint firstItem="2RT-ZA-65V" firstAttribute="top" secondItem="9ln-nr-VzA" secondAttribute="bottom" constant="21" id="Vq7-Vh-JcW"/> | ||
153 | + <constraint firstAttribute="bottom" secondItem="ROd-Hw-Km6" secondAttribute="bottom" id="l1w-4Q-Zlk"/> | ||
135 | <constraint firstAttribute="width" constant="150" id="mdM-Dj-z5q"/> | 154 | <constraint firstAttribute="width" constant="150" id="mdM-Dj-z5q"/> |
136 | <constraint firstItem="2RT-ZA-65V" firstAttribute="centerX" secondItem="1z3-Uc-my7" secondAttribute="centerX" id="nTc-V9-qbv"/> | 155 | <constraint firstItem="2RT-ZA-65V" firstAttribute="centerX" secondItem="1z3-Uc-my7" secondAttribute="centerX" id="nTc-V9-qbv"/> |
137 | <constraint firstAttribute="width" secondItem="1z3-Uc-my7" secondAttribute="height" multiplier="1:1" id="otI-Su-s6E"/> | 156 | <constraint firstAttribute="width" secondItem="1z3-Uc-my7" secondAttribute="height" multiplier="1:1" id="otI-Su-s6E"/> |
138 | - <constraint firstAttribute="bottom" secondItem="2RT-ZA-65V" secondAttribute="bottom" constant="8" id="s3B-42-Qq8"/> | 157 | + <constraint firstItem="ROd-Hw-Km6" firstAttribute="top" secondItem="1z3-Uc-my7" secondAttribute="top" id="pUj-0O-VnA"/> |
158 | + <constraint firstAttribute="trailing" secondItem="ROd-Hw-Km6" secondAttribute="trailing" id="r9s-8F-tDy"/> | ||
139 | </constraints> | 159 | </constraints> |
140 | <userDefinedRuntimeAttributes> | 160 | <userDefinedRuntimeAttributes> |
141 | <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> | 161 | <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> |
@@ -245,9 +265,6 @@ | @@ -245,9 +265,6 @@ | ||
245 | <state key="normal" title="点击参与"> | 265 | <state key="normal" title="点击参与"> |
246 | <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | 266 | <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> |
247 | </state> | 267 | </state> |
248 | - <connections> | ||
249 | - <action selector="attendScurse:" destination="BYZ-38-t0r" eventType="touchUpInside" id="UZf-Ia-uTH"/> | ||
250 | - </connections> | ||
251 | </button> | 268 | </button> |
252 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="热门课程" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="LRo-YD-6S6"> | 269 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="热门课程" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="LRo-YD-6S6"> |
253 | <rect key="frame" x="8" y="113" width="61.5" height="18"/> | 270 | <rect key="frame" x="8" y="113" width="61.5" height="18"/> |
@@ -255,17 +272,27 @@ | @@ -255,17 +272,27 @@ | ||
255 | <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | 272 | <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/> |
256 | <nil key="highlightedColor"/> | 273 | <nil key="highlightedColor"/> |
257 | </label> | 274 | </label> |
275 | + <button opaque="NO" tag="3000" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Xml-PN-wWh"> | ||
276 | + <rect key="frame" x="0.0" y="0.0" width="175" height="175.5"/> | ||
277 | + <connections> | ||
278 | + <action selector="attendScurse:" destination="BYZ-38-t0r" eventType="touchUpInside" id="adV-6D-vPI"/> | ||
279 | + </connections> | ||
280 | + </button> | ||
258 | </subviews> | 281 | </subviews> |
259 | <color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> | 282 | <color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
260 | <constraints> | 283 | <constraints> |
261 | <constraint firstItem="O7r-js-8BI" firstAttribute="leading" secondItem="kkx-lN-sfK" secondAttribute="leading" constant="8" id="3aG-x3-4Cw"/> | 284 | <constraint firstItem="O7r-js-8BI" firstAttribute="leading" secondItem="kkx-lN-sfK" secondAttribute="leading" constant="8" id="3aG-x3-4Cw"/> |
285 | + <constraint firstItem="Xml-PN-wWh" firstAttribute="top" secondItem="kkx-lN-sfK" secondAttribute="top" id="5nJ-Lx-YaO"/> | ||
262 | <constraint firstItem="O7r-js-8BI" firstAttribute="top" secondItem="LRo-YD-6S6" secondAttribute="bottom" constant="8" id="6hq-9D-QOl"/> | 286 | <constraint firstItem="O7r-js-8BI" firstAttribute="top" secondItem="LRo-YD-6S6" secondAttribute="bottom" constant="8" id="6hq-9D-QOl"/> |
263 | <constraint firstAttribute="width" secondItem="kkx-lN-sfK" secondAttribute="height" multiplier="1:1" id="HW0-lf-ojc"/> | 287 | <constraint firstAttribute="width" secondItem="kkx-lN-sfK" secondAttribute="height" multiplier="1:1" id="HW0-lf-ojc"/> |
264 | <constraint firstItem="Jql-zY-Zqo" firstAttribute="leading" secondItem="kkx-lN-sfK" secondAttribute="leading" id="Jyr-dl-P9R"/> | 288 | <constraint firstItem="Jql-zY-Zqo" firstAttribute="leading" secondItem="kkx-lN-sfK" secondAttribute="leading" id="Jyr-dl-P9R"/> |
265 | <constraint firstAttribute="trailing" secondItem="Jql-zY-Zqo" secondAttribute="trailing" id="MEc-va-pgf"/> | 289 | <constraint firstAttribute="trailing" secondItem="Jql-zY-Zqo" secondAttribute="trailing" id="MEc-va-pgf"/> |
290 | + <constraint firstItem="Xml-PN-wWh" firstAttribute="leading" secondItem="kkx-lN-sfK" secondAttribute="leading" id="X1z-gM-jWu"/> | ||
266 | <constraint firstItem="Jql-zY-Zqo" firstAttribute="top" secondItem="kkx-lN-sfK" secondAttribute="top" id="Zi5-eI-CED"/> | 291 | <constraint firstItem="Jql-zY-Zqo" firstAttribute="top" secondItem="kkx-lN-sfK" secondAttribute="top" id="Zi5-eI-CED"/> |
267 | <constraint firstAttribute="bottom" secondItem="O7r-js-8BI" secondAttribute="bottom" constant="8" id="bct-mp-bxS"/> | 292 | <constraint firstAttribute="bottom" secondItem="O7r-js-8BI" secondAttribute="bottom" constant="8" id="bct-mp-bxS"/> |
293 | + <constraint firstAttribute="trailing" secondItem="Xml-PN-wWh" secondAttribute="trailing" id="cjK-ee-Ad8"/> | ||
268 | <constraint firstAttribute="bottom" secondItem="Jql-zY-Zqo" secondAttribute="bottom" id="fw3-Sp-Utr"/> | 294 | <constraint firstAttribute="bottom" secondItem="Jql-zY-Zqo" secondAttribute="bottom" id="fw3-Sp-Utr"/> |
295 | + <constraint firstAttribute="bottom" secondItem="Xml-PN-wWh" secondAttribute="bottom" id="le8-kv-kr5"/> | ||
269 | <constraint firstItem="LRo-YD-6S6" firstAttribute="leading" secondItem="kkx-lN-sfK" secondAttribute="leading" constant="8" id="o1Q-hw-OgL"/> | 296 | <constraint firstItem="LRo-YD-6S6" firstAttribute="leading" secondItem="kkx-lN-sfK" secondAttribute="leading" constant="8" id="o1Q-hw-OgL"/> |
270 | </constraints> | 297 | </constraints> |
271 | <userDefinedRuntimeAttributes> | 298 | <userDefinedRuntimeAttributes> |
@@ -290,9 +317,6 @@ | @@ -290,9 +317,6 @@ | ||
290 | <state key="normal" title="点击参与"> | 317 | <state key="normal" title="点击参与"> |
291 | <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | 318 | <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> |
292 | </state> | 319 | </state> |
293 | - <connections> | ||
294 | - <action selector="attendScurse:" destination="BYZ-38-t0r" eventType="touchUpInside" id="gtw-he-M6X"/> | ||
295 | - </connections> | ||
296 | </button> | 320 | </button> |
297 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="热门课程" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="HzZ-gc-k6q"> | 321 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="热门课程" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="HzZ-gc-k6q"> |
298 | <rect key="frame" x="8" y="21" width="61.5" height="18"/> | 322 | <rect key="frame" x="8" y="21" width="61.5" height="18"/> |
@@ -300,17 +324,27 @@ | @@ -300,17 +324,27 @@ | ||
300 | <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | 324 | <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/> |
301 | <nil key="highlightedColor"/> | 325 | <nil key="highlightedColor"/> |
302 | </label> | 326 | </label> |
327 | + <button opaque="NO" tag="3002" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="zvf-dA-6kr"> | ||
328 | + <rect key="frame" x="0.0" y="0.0" width="175" height="83.5"/> | ||
329 | + <connections> | ||
330 | + <action selector="attendScurse:" destination="BYZ-38-t0r" eventType="touchUpInside" id="A9J-Jx-AQ0"/> | ||
331 | + </connections> | ||
332 | + </button> | ||
303 | </subviews> | 333 | </subviews> |
304 | <color key="backgroundColor" white="0.66666666669999997" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> | 334 | <color key="backgroundColor" white="0.66666666669999997" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
305 | <constraints> | 335 | <constraints> |
336 | + <constraint firstItem="zvf-dA-6kr" firstAttribute="leading" secondItem="6YE-Yx-A8r" secondAttribute="leading" id="8NH-AH-kf2"/> | ||
306 | <constraint firstItem="qMv-R9-Qa3" firstAttribute="top" secondItem="6YE-Yx-A8r" secondAttribute="top" id="Dxq-Iz-iMF"/> | 337 | <constraint firstItem="qMv-R9-Qa3" firstAttribute="top" secondItem="6YE-Yx-A8r" secondAttribute="top" id="Dxq-Iz-iMF"/> |
307 | <constraint firstAttribute="bottom" secondItem="Uk9-TJ-dgw" secondAttribute="bottom" constant="8" id="HH3-Em-feP"/> | 338 | <constraint firstAttribute="bottom" secondItem="Uk9-TJ-dgw" secondAttribute="bottom" constant="8" id="HH3-Em-feP"/> |
308 | <constraint firstItem="HzZ-gc-k6q" firstAttribute="leading" secondItem="6YE-Yx-A8r" secondAttribute="leading" constant="8" id="M3h-3z-fNn"/> | 339 | <constraint firstItem="HzZ-gc-k6q" firstAttribute="leading" secondItem="6YE-Yx-A8r" secondAttribute="leading" constant="8" id="M3h-3z-fNn"/> |
340 | + <constraint firstAttribute="bottom" secondItem="zvf-dA-6kr" secondAttribute="bottom" id="OSu-2B-h8K"/> | ||
309 | <constraint firstAttribute="bottom" secondItem="qMv-R9-Qa3" secondAttribute="bottom" id="PPZ-aE-DTb"/> | 341 | <constraint firstAttribute="bottom" secondItem="qMv-R9-Qa3" secondAttribute="bottom" id="PPZ-aE-DTb"/> |
310 | <constraint firstItem="Uk9-TJ-dgw" firstAttribute="leading" secondItem="6YE-Yx-A8r" secondAttribute="leading" constant="8" id="QJX-22-tpU"/> | 342 | <constraint firstItem="Uk9-TJ-dgw" firstAttribute="leading" secondItem="6YE-Yx-A8r" secondAttribute="leading" constant="8" id="QJX-22-tpU"/> |
311 | <constraint firstItem="Uk9-TJ-dgw" firstAttribute="top" secondItem="HzZ-gc-k6q" secondAttribute="bottom" constant="8" id="QUt-cW-eX3"/> | 343 | <constraint firstItem="Uk9-TJ-dgw" firstAttribute="top" secondItem="HzZ-gc-k6q" secondAttribute="bottom" constant="8" id="QUt-cW-eX3"/> |
312 | <constraint firstItem="qMv-R9-Qa3" firstAttribute="leading" secondItem="6YE-Yx-A8r" secondAttribute="leading" id="VjX-HK-2qc"/> | 344 | <constraint firstItem="qMv-R9-Qa3" firstAttribute="leading" secondItem="6YE-Yx-A8r" secondAttribute="leading" id="VjX-HK-2qc"/> |
345 | + <constraint firstAttribute="trailing" secondItem="zvf-dA-6kr" secondAttribute="trailing" id="ZnF-a0-mry"/> | ||
313 | <constraint firstAttribute="trailing" secondItem="qMv-R9-Qa3" secondAttribute="trailing" id="drR-7g-3VH"/> | 346 | <constraint firstAttribute="trailing" secondItem="qMv-R9-Qa3" secondAttribute="trailing" id="drR-7g-3VH"/> |
347 | + <constraint firstItem="zvf-dA-6kr" firstAttribute="top" secondItem="6YE-Yx-A8r" secondAttribute="top" id="i0b-gT-YFK"/> | ||
314 | </constraints> | 348 | </constraints> |
315 | <userDefinedRuntimeAttributes> | 349 | <userDefinedRuntimeAttributes> |
316 | <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> | 350 | <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> |
@@ -334,9 +368,6 @@ | @@ -334,9 +368,6 @@ | ||
334 | <state key="normal" title="点击参与"> | 368 | <state key="normal" title="点击参与"> |
335 | <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | 369 | <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> |
336 | </state> | 370 | </state> |
337 | - <connections> | ||
338 | - <action selector="attendScurse:" destination="BYZ-38-t0r" eventType="touchUpInside" id="MBq-mi-A8z"/> | ||
339 | - </connections> | ||
340 | </button> | 371 | </button> |
341 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="热门课程" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="IlG-SR-47u"> | 372 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="热门课程" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="IlG-SR-47u"> |
342 | <rect key="frame" x="8" y="22" width="61.5" height="18"/> | 373 | <rect key="frame" x="8" y="22" width="61.5" height="18"/> |
@@ -344,6 +375,12 @@ | @@ -344,6 +375,12 @@ | ||
344 | <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | 375 | <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/> |
345 | <nil key="highlightedColor"/> | 376 | <nil key="highlightedColor"/> |
346 | </label> | 377 | </label> |
378 | + <button opaque="NO" tag="3001" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="YIw-qU-3V5"> | ||
379 | + <rect key="frame" x="-0.5" y="0.0" width="176" height="83.5"/> | ||
380 | + <connections> | ||
381 | + <action selector="attendScurse:" destination="BYZ-38-t0r" eventType="touchUpInside" id="7cN-If-1H1"/> | ||
382 | + </connections> | ||
383 | + </button> | ||
347 | </subviews> | 384 | </subviews> |
348 | <color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> | 385 | <color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
349 | <constraints> | 386 | <constraints> |
@@ -353,7 +390,11 @@ | @@ -353,7 +390,11 @@ | ||
353 | <constraint firstItem="IlG-SR-47u" firstAttribute="leading" secondItem="nTE-Oc-4PW" secondAttribute="leading" constant="8" id="PHY-SB-wic"/> | 390 | <constraint firstItem="IlG-SR-47u" firstAttribute="leading" secondItem="nTE-Oc-4PW" secondAttribute="leading" constant="8" id="PHY-SB-wic"/> |
354 | <constraint firstAttribute="trailing" secondItem="P7A-gb-DMF" secondAttribute="trailing" id="RXm-NJ-H9Z"/> | 391 | <constraint firstAttribute="trailing" secondItem="P7A-gb-DMF" secondAttribute="trailing" id="RXm-NJ-H9Z"/> |
355 | <constraint firstAttribute="bottom" secondItem="P7A-gb-DMF" secondAttribute="bottom" id="UDc-4Y-4Df"/> | 392 | <constraint firstAttribute="bottom" secondItem="P7A-gb-DMF" secondAttribute="bottom" id="UDc-4Y-4Df"/> |
393 | + <constraint firstAttribute="trailing" secondItem="YIw-qU-3V5" secondAttribute="trailing" id="WjU-kd-7cK"/> | ||
394 | + <constraint firstAttribute="bottom" secondItem="YIw-qU-3V5" secondAttribute="bottom" id="dlT-rW-fLJ"/> | ||
395 | + <constraint firstItem="YIw-qU-3V5" firstAttribute="leading" secondItem="nTE-Oc-4PW" secondAttribute="leading" id="g3m-Eg-Sph"/> | ||
356 | <constraint firstItem="l93-Wh-xSB" firstAttribute="top" secondItem="IlG-SR-47u" secondAttribute="bottom" constant="8" id="ofC-a7-KtM"/> | 396 | <constraint firstItem="l93-Wh-xSB" firstAttribute="top" secondItem="IlG-SR-47u" secondAttribute="bottom" constant="8" id="ofC-a7-KtM"/> |
397 | + <constraint firstItem="YIw-qU-3V5" firstAttribute="top" secondItem="nTE-Oc-4PW" secondAttribute="top" id="vEb-rf-vQs"/> | ||
357 | <constraint firstItem="P7A-gb-DMF" firstAttribute="top" secondItem="nTE-Oc-4PW" secondAttribute="top" id="yZn-vR-IZN"/> | 398 | <constraint firstItem="P7A-gb-DMF" firstAttribute="top" secondItem="nTE-Oc-4PW" secondAttribute="top" id="yZn-vR-IZN"/> |
358 | </constraints> | 399 | </constraints> |
359 | <userDefinedRuntimeAttributes> | 400 | <userDefinedRuntimeAttributes> |
@@ -414,23 +455,33 @@ | @@ -414,23 +455,33 @@ | ||
414 | </constraints> | 455 | </constraints> |
415 | <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/> | 456 | <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/> |
416 | </view> | 457 | </view> |
417 | - <navigationItem key="navigationItem" title="测评" id="1Lk-x4-9OW"/> | 458 | + <navigationItem key="navigationItem" title="测评" id="1Lk-x4-9OW"> |
459 | + <barButtonItem key="rightBarButtonItem" systemItem="camera" id="e8u-Kr-J32"> | ||
460 | + <color key="tintColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | ||
461 | + <connections> | ||
462 | + <action selector="selectCamareAction:" destination="BYZ-38-t0r" id="ePR-Ms-0ze"/> | ||
463 | + </connections> | ||
464 | + </barButtonItem> | ||
465 | + </navigationItem> | ||
418 | <connections> | 466 | <connections> |
419 | <outlet property="collectionView" destination="FnF-em-s4P" id="5l4-ct-nXK"/> | 467 | <outlet property="collectionView" destination="FnF-em-s4P" id="5l4-ct-nXK"/> |
420 | <outlet property="contentHeight" destination="BmN-ke-PtF" id="ecB-Td-MI3"/> | 468 | <outlet property="contentHeight" destination="BmN-ke-PtF" id="ecB-Td-MI3"/> |
421 | <outlet property="height" destination="5vQ-vS-Ne0" id="ZR5-kQ-ing"/> | 469 | <outlet property="height" destination="5vQ-vS-Ne0" id="ZR5-kQ-ing"/> |
422 | - <outletCollection property="attendCourse" destination="O7r-js-8BI" collectionClass="NSMutableArray" id="UGC-Dc-LPn"/> | ||
423 | - <outletCollection property="attendCourse" destination="l93-Wh-xSB" collectionClass="NSMutableArray" id="3iO-bh-taP"/> | ||
424 | - <outletCollection property="attendCourse" destination="Uk9-TJ-dgw" collectionClass="NSMutableArray" id="Ivq-87-Txu"/> | ||
425 | - <outletCollection property="courseImage" destination="Jql-zY-Zqo" collectionClass="NSMutableArray" id="yaz-YZ-hex"/> | ||
426 | - <outletCollection property="courseImage" destination="P7A-gb-DMF" collectionClass="NSMutableArray" id="FKF-z0-4tL"/> | ||
427 | - <outletCollection property="courseImage" destination="qMv-R9-Qa3" collectionClass="NSMutableArray" id="3R6-7o-dG2"/> | ||
428 | <outletCollection property="activityImage" destination="9ln-nr-VzA" collectionClass="NSMutableArray" id="IGS-Cv-m1D"/> | 470 | <outletCollection property="activityImage" destination="9ln-nr-VzA" collectionClass="NSMutableArray" id="IGS-Cv-m1D"/> |
429 | <outletCollection property="activityName" destination="2RT-ZA-65V" collectionClass="NSMutableArray" id="cRJ-xB-lVl"/> | 471 | <outletCollection property="activityName" destination="2RT-ZA-65V" collectionClass="NSMutableArray" id="cRJ-xB-lVl"/> |
430 | <outletCollection property="activityEntrance" destination="1z3-Uc-my7" collectionClass="NSMutableArray" id="CsC-me-5U1"/> | 472 | <outletCollection property="activityEntrance" destination="1z3-Uc-my7" collectionClass="NSMutableArray" id="CsC-me-5U1"/> |
431 | <outletCollection property="activityImage" destination="jM3-pe-HNZ" collectionClass="NSMutableArray" id="pyE-2j-xA6"/> | 473 | <outletCollection property="activityImage" destination="jM3-pe-HNZ" collectionClass="NSMutableArray" id="pyE-2j-xA6"/> |
432 | <outletCollection property="activityName" destination="lMI-9m-Zal" collectionClass="NSMutableArray" id="Qyw-lY-6Tz"/> | 474 | <outletCollection property="activityName" destination="lMI-9m-Zal" collectionClass="NSMutableArray" id="Qyw-lY-6Tz"/> |
433 | <outletCollection property="activityEntrance" destination="CKI-XD-Eo7" collectionClass="NSMutableArray" id="UkU-ac-oj9"/> | 475 | <outletCollection property="activityEntrance" destination="CKI-XD-Eo7" collectionClass="NSMutableArray" id="UkU-ac-oj9"/> |
476 | + <outletCollection property="courseImage" destination="Jql-zY-Zqo" collectionClass="NSMutableArray" id="cPm-xr-S7M"/> | ||
477 | + <outletCollection property="courseImage" destination="P7A-gb-DMF" collectionClass="NSMutableArray" id="Wl2-Cg-QJH"/> | ||
478 | + <outletCollection property="courseImage" destination="qMv-R9-Qa3" collectionClass="NSMutableArray" id="jhY-aE-Mf4"/> | ||
479 | + <outletCollection property="attendCourse" destination="O7r-js-8BI" collectionClass="NSMutableArray" id="mzx-RT-t4D"/> | ||
480 | + <outletCollection property="attendCourse" destination="l93-Wh-xSB" collectionClass="NSMutableArray" id="lBl-gA-e4U"/> | ||
481 | + <outletCollection property="attendCourse" destination="Uk9-TJ-dgw" collectionClass="NSMutableArray" id="ZIQ-2G-3gb"/> | ||
482 | + <outletCollection property="courseLabel" destination="LRo-YD-6S6" collectionClass="NSMutableArray" id="usG-zW-SgY"/> | ||
483 | + <outletCollection property="courseLabel" destination="IlG-SR-47u" collectionClass="NSMutableArray" id="hO0-8Y-LCn"/> | ||
484 | + <outletCollection property="courseLabel" destination="HzZ-gc-k6q" collectionClass="NSMutableArray" id="cuT-aO-hXY"/> | ||
434 | </connections> | 485 | </connections> |
435 | </viewController> | 486 | </viewController> |
436 | <placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/> | 487 | <placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/> |
@@ -1601,7 +1652,7 @@ | @@ -1601,7 +1652,7 @@ | ||
1601 | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="6b5-x5-1h9"> | 1652 | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="6b5-x5-1h9"> |
1602 | <rect key="frame" x="0.0" y="64" width="375" height="128"/> | 1653 | <rect key="frame" x="0.0" y="64" width="375" height="128"/> |
1603 | <subviews> | 1654 | <subviews> |
1604 | - <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="my_headerView_backgroundimageView" translatesAutoresizingMaskIntoConstraints="NO" id="VfB-06-9W9"> | 1655 | + <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="my_defphoto" translatesAutoresizingMaskIntoConstraints="NO" id="VfB-06-9W9"> |
1605 | <rect key="frame" x="8" y="34" width="60" height="60"/> | 1656 | <rect key="frame" x="8" y="34" width="60" height="60"/> |
1606 | <constraints> | 1657 | <constraints> |
1607 | <constraint firstAttribute="width" constant="60" id="OfT-bN-uA8"/> | 1658 | <constraint firstAttribute="width" constant="60" id="OfT-bN-uA8"/> |
@@ -2022,7 +2073,7 @@ | @@ -2022,7 +2073,7 @@ | ||
2022 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="NYX-xp-uf1"> | 2073 | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="NYX-xp-uf1"> |
2023 | <rect key="frame" x="8" y="21" width="42" height="21"/> | 2074 | <rect key="frame" x="8" y="21" width="42" height="21"/> |
2024 | <fontDescription key="fontDescription" type="system" pointSize="17"/> | 2075 | <fontDescription key="fontDescription" type="system" pointSize="17"/> |
2025 | - <color key="textColor" red="0.27503338459999999" green="0.50970917940000005" blue="0.90092128520000003" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> | 2076 | + <color key="textColor" red="0.27450980392156865" green="0.50980392156862742" blue="0.90196078431372551" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
2026 | <nil key="highlightedColor"/> | 2077 | <nil key="highlightedColor"/> |
2027 | </label> | 2078 | </label> |
2028 | </subviews> | 2079 | </subviews> |
@@ -2059,15 +2110,18 @@ | @@ -2059,15 +2110,18 @@ | ||
2059 | </objects> | 2110 | </objects> |
2060 | <point key="canvasLocation" x="1599" y="-272"/> | 2111 | <point key="canvasLocation" x="1599" y="-272"/> |
2061 | </scene> | 2112 | </scene> |
2062 | - <!--测评--> | 2113 | + <!--慧测慧练--> |
2063 | <scene sceneID="uiJ-2h-Wbz"> | 2114 | <scene sceneID="uiJ-2h-Wbz"> |
2064 | <objects> | 2115 | <objects> |
2065 | <navigationController automaticallyAdjustsScrollViewInsets="NO" id="fWd-Qg-F7w" customClass="MainViewController" customModule="ParentAssistant" customModuleProvider="target" sceneMemberID="viewController"> | 2116 | <navigationController automaticallyAdjustsScrollViewInsets="NO" id="fWd-Qg-F7w" customClass="MainViewController" customModule="ParentAssistant" customModuleProvider="target" sceneMemberID="viewController"> |
2066 | - <tabBarItem key="tabBarItem" title="测评" image="evaluation_bar_icon" selectedImage="evaluation_bar_icon_select" id="wbm-sK-I2A"/> | 2117 | + <tabBarItem key="tabBarItem" title="慧测慧练" image="evaluation_bar_icon" selectedImage="evaluation_bar_icon_select" id="wbm-sK-I2A"/> |
2067 | <toolbarItems/> | 2118 | <toolbarItems/> |
2068 | <navigationBar key="navigationBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="5av-Vy-e7z"> | 2119 | <navigationBar key="navigationBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="5av-Vy-e7z"> |
2069 | <rect key="frame" x="0.0" y="20" width="375" height="44"/> | 2120 | <rect key="frame" x="0.0" y="20" width="375" height="44"/> |
2070 | <autoresizingMask key="autoresizingMask"/> | 2121 | <autoresizingMask key="autoresizingMask"/> |
2122 | + <textAttributes key="titleTextAttributes"> | ||
2123 | + <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | ||
2124 | + </textAttributes> | ||
2071 | </navigationBar> | 2125 | </navigationBar> |
2072 | <nil name="viewControllers"/> | 2126 | <nil name="viewControllers"/> |
2073 | <connections> | 2127 | <connections> |
@@ -2125,6 +2179,10 @@ | @@ -2125,6 +2179,10 @@ | ||
2125 | <navigationBar key="navigationBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="faE-a1-9KB"> | 2179 | <navigationBar key="navigationBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="faE-a1-9KB"> |
2126 | <rect key="frame" x="0.0" y="20" width="375" height="44"/> | 2180 | <rect key="frame" x="0.0" y="20" width="375" height="44"/> |
2127 | <autoresizingMask key="autoresizingMask"/> | 2181 | <autoresizingMask key="autoresizingMask"/> |
2182 | + <textAttributes key="titleTextAttributes"> | ||
2183 | + <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | ||
2184 | + <color key="textShadowColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | ||
2185 | + </textAttributes> | ||
2128 | </navigationBar> | 2186 | </navigationBar> |
2129 | <nil name="viewControllers"/> | 2187 | <nil name="viewControllers"/> |
2130 | <connections> | 2188 | <connections> |
@@ -2146,6 +2204,7 @@ | @@ -2146,6 +2204,7 @@ | ||
2146 | <image name="evaluation_icon_training" width="47" height="47"/> | 2204 | <image name="evaluation_icon_training" width="47" height="47"/> |
2147 | <image name="my_bar_icon" width="19" height="22"/> | 2205 | <image name="my_bar_icon" width="19" height="22"/> |
2148 | <image name="my_bar_icon_select" width="19" height="22"/> | 2206 | <image name="my_bar_icon_select" width="19" height="22"/> |
2207 | + <image name="my_defphoto" width="61" height="61"/> | ||
2149 | <image name="my_headerView_backgroundimageView" width="375" height="139"/> | 2208 | <image name="my_headerView_backgroundimageView" width="375" height="139"/> |
2150 | <image name="my_icon_currentInfo" width="9" height="16"/> | 2209 | <image name="my_icon_currentInfo" width="9" height="16"/> |
2151 | <image name="my_icon_orderMessage" width="14" height="19"/> | 2210 | <image name="my_icon_orderMessage" width="14" height="19"/> |