南鑫林 5 rokov pred
rodič
commit
a7dfe68e4b
24 zmenil súbory, kde vykonal 168 pridanie a 33 odobranie
  1. 4 0
      RainbowPlanet/RainbowPlanet.xcodeproj/project.pbxproj
  2. 1 1
      RainbowPlanet/RainbowPlanet/Base/BaseTabbarViewController/BaseTabbarViewController.swift
  3. 5 0
      RainbowPlanet/RainbowPlanet/Base/BaseView/BaseView.swift
  4. 1 1
      RainbowPlanet/RainbowPlanet/Base/BaseViewController/BaseViewController.swift
  5. 2 0
      RainbowPlanet/RainbowPlanet/Base/BaseWebViewController/BaseJSWebBaseViewController.swift
  6. 6 5
      RainbowPlanet/RainbowPlanet/Base/BaseWebViewController/BaseJSWebViewController.swift
  7. 37 0
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/View/Header/CommunityFollowLoginTableHeaderView.swift
  8. 20 3
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Follow/CommunityFollowViewController.swift
  9. 16 15
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Main/CommunityViewController.swift
  10. 1 2
      RainbowPlanet/RainbowPlanet/Modules/MineModule/PersonalCenter/PersonalCenterView/PersonViewUserAndOtherListView.swift
  11. 1 0
      RainbowPlanet/RainbowPlanet/Modules/RegisterLoginModule/MobileLogin/ViewController/MobileLoginViewController.swift
  12. 1 0
      RainbowPlanet/RainbowPlanet/Modules/RegisterLoginModule/PasswordLogin/ViewController/PasswordLoginViewController.swift
  13. 1 0
      RainbowPlanet/RainbowPlanet/Modules/RegisterLoginModule/RegisterLogin/ViewController/RegisterLoginViewController.swift
  14. 1 1
      RainbowPlanet/RainbowPlanet/Modules/SearchModule/Search/View/SearchView.swift
  15. 22 0
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/NavigationBarIcons/navbar_shadow_pic_down.imageset/Contents.json
  16. BIN
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/NavigationBarIcons/navbar_shadow_pic_down.imageset/navbar_shadow_pic_down@2x.png
  17. BIN
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/NavigationBarIcons/navbar_shadow_pic_down.imageset/navbar_shadow_pic_down@3x.png
  18. 22 0
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/NavigationBarIcons/navbar_shadow_pic_up.imageset/Contents.json
  19. BIN
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/NavigationBarIcons/navbar_shadow_pic_up.imageset/navbar_shadow_pic_up@2x.png
  20. BIN
      RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/NavigationBarIcons/navbar_shadow_pic_up.imageset/navbar_shadow_pic_up@3x.png
  21. 22 0
      RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/notlogin_star_pic_bg.imageset/Contents.json
  22. BIN
      RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/notlogin_star_pic_bg.imageset/notlogin_star_pic_bg@2x.png
  23. BIN
      RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/notlogin_star_pic_bg.imageset/notlogin_star_pic_bg@3x.png
  24. 5 5
      RainbowPlanet/RainbowPlanet/Tools/WRNavigationBar/WRCustomNavigationBar.swift

+ 4 - 0
RainbowPlanet/RainbowPlanet.xcodeproj/project.pbxproj

@@ -223,6 +223,7 @@
 		A7636AC822682BAF00374F9E /* LocationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7636AC722682BAF00374F9E /* LocationView.swift */; };
 		A76390EB2248E27A0067EEE0 /* UserNotifications.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A76390EA2248E27A0067EEE0 /* UserNotifications.framework */; };
 		A763BE6C22F173A0000CE594 /* LoginNowView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A763BE6B22F173A0000CE594 /* LoginNowView.swift */; };
+		A763BE6E22F1953D000CE594 /* CommunityFollowLoginTableHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A763BE6D22F1953D000CE594 /* CommunityFollowLoginTableHeaderView.swift */; };
 		A7649B6922977A4300BCE9D1 /* ShopSectionHeaderModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7649B6822977A4300BCE9D1 /* ShopSectionHeaderModel.swift */; };
 		A76B786922CE04940047EC1B /* CommunityRecommendDetailHTMLTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = A76B786822CE04940047EC1B /* CommunityRecommendDetailHTMLTableViewCell.swift */; };
 		A770E5DB22CED8C600CBD0A4 /* RouterManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = A770E5DA22CED8C600CBD0A4 /* RouterManager.swift */; };
@@ -931,6 +932,7 @@
 		A7636AC722682BAF00374F9E /* LocationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocationView.swift; sourceTree = "<group>"; };
 		A76390EA2248E27A0067EEE0 /* UserNotifications.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UserNotifications.framework; path = System/Library/Frameworks/UserNotifications.framework; sourceTree = SDKROOT; };
 		A763BE6B22F173A0000CE594 /* LoginNowView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginNowView.swift; sourceTree = "<group>"; };
+		A763BE6D22F1953D000CE594 /* CommunityFollowLoginTableHeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommunityFollowLoginTableHeaderView.swift; sourceTree = "<group>"; };
 		A7649B6822977A4300BCE9D1 /* ShopSectionHeaderModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShopSectionHeaderModel.swift; sourceTree = "<group>"; };
 		A76B786822CE04940047EC1B /* CommunityRecommendDetailHTMLTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommunityRecommendDetailHTMLTableViewCell.swift; sourceTree = "<group>"; };
 		A770E5DA22CED8C600CBD0A4 /* RouterManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RouterManager.swift; sourceTree = "<group>"; };
@@ -4409,6 +4411,7 @@
 			isa = PBXGroup;
 			children = (
 				A7F2D6C022B0D1CB0093000B /* CommunityFollowTableHeaderView.swift */,
+				A763BE6D22F1953D000CE594 /* CommunityFollowLoginTableHeaderView.swift */,
 				A7F2D6C522B0DC7B0093000B /* CommunityCommonSectionHeaderView.swift */,
 			);
 			path = Header;
@@ -5987,6 +5990,7 @@
 				A7FF1589228C854900A85748 /* OrderDetailBottomView.swift in Sources */,
 				A770E5DB22CED8C600CBD0A4 /* RouterManager.swift in Sources */,
 				A75B782C22DEC908007B986A /* SpecialTwoTypeCollectionViewCell.swift in Sources */,
+				A763BE6E22F1953D000CE594 /* CommunityFollowLoginTableHeaderView.swift in Sources */,
 				A714348722DD9D4700132DA9 /* RedemptionAreaViewController.swift in Sources */,
 				A73A56DE22DC9CCE004920FE /* UpdateVersionManager.swift in Sources */,
 				A7D5F22B22BB687100F8E9AF /* BaseJSWebViewController.swift in Sources */,

+ 1 - 1
RainbowPlanet/RainbowPlanet/Base/BaseTabbarViewController/BaseTabbarViewController.swift

@@ -48,7 +48,7 @@ class BaseTabbarViewController: NSObject {
     func tabBarViewController() -> ESTabBarController {
         esTabBarController = ESTabBarController()
         
-        esTabBarController.tabBar.shadowImage = UIImage(named: "tab_top_line")
+        esTabBarController.tabBar.shadowImage = UIImage(named: "navbar_shadow_pic_down")
         esTabBarController.shouldHijackHandler = {
            [weak self] (tabbarController, viewController, index) in
             

+ 5 - 0
RainbowPlanet/RainbowPlanet/Base/BaseView/BaseView.swift

@@ -17,6 +17,7 @@ class BaseView: UIView {
         super.init(frame: frame)
         self.setupViews()
         self.setupLayouts()
+        self.setupData()
     }
     required init?(coder aDecoder: NSCoder) {
         fatalError("init(coder:) has not been implemented")
@@ -29,5 +30,9 @@ class BaseView: UIView {
     func setupLayouts() {
 
     }
+    
+    func setupData() {
+        
+    }
 
 }

+ 1 - 1
RainbowPlanet/RainbowPlanet/Base/BaseViewController/BaseViewController.swift

@@ -31,7 +31,7 @@ class BaseViewController: UIViewController {
     
     fileprivate func setupNavigationBar()
     {
-        navigationBar.wr_setBottomLineHidden(hidden: true)
+        navigationBar.wr_setBottomLineHidden(hidden: false)
         navigationBar.barBackgroundColor = UIColor.white
         navigationBar.titleLabelColor = k333333Color
         view.addSubview(navigationBar)

+ 2 - 0
RainbowPlanet/RainbowPlanet/Base/BaseWebViewController/BaseJSWebBaseViewController.swift

@@ -25,6 +25,7 @@ class BaseJSWebBaseViewController: BaseViewController {
     override func viewDidLoad() {
         super.viewDidLoad()
         setupViews()
+//        setupData()
         
     }
     
@@ -33,6 +34,7 @@ class BaseJSWebBaseViewController: BaseViewController {
         view.addSubview(wkWebView)
         view.addSubview(progressView)
         WebViewJavascriptBridge.enableLogging()
+        view.insertSubview(navigationBar, aboveSubview: wkWebView)
     }
     
     override func setupData() {

+ 6 - 5
RainbowPlanet/RainbowPlanet/Base/BaseWebViewController/BaseJSWebViewController.swift

@@ -10,7 +10,7 @@ import UIKit
 import WebKit
 import WebViewJavascriptBridge
 
-class BaseJSWebViewController: UIViewController {
+class BaseJSWebViewController: BaseViewController {
     
     deinit {
         removeWebView()
@@ -24,21 +24,22 @@ class BaseJSWebViewController: UIViewController {
     
     override func viewDidLoad() {
         super.viewDidLoad()
-
+        setupViews()
+        setupData()
     }
     
-    func setupViews() {
+    override func setupViews() {
         removeWKWebViewCookies()
         view.addSubview(wkWebView)
         view.addSubview(progressView)
         WebViewJavascriptBridge.enableLogging()
     }
     
-    func setupLayouts() {
+    override func setupLayouts() {
         
     }
     
-    func setupData() {
+    override func setupData() {
         //// 加载普通URL
         if (URLString != nil) {
             webloadType(.URLString(url: URLString!))

+ 37 - 0
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/View/Header/CommunityFollowLoginTableHeaderView.swift

@@ -0,0 +1,37 @@
+//
+//  CommunityFollowLoginTableHeaderView.swift
+//  RainbowPlanet
+//
+//  Created by 南鑫林 on 2019/7/31.
+//  Copyright © 2019 RainbowPlanet. All rights reserved.
+//
+
+import UIKit
+
+class CommunityFollowLoginTableHeaderView: BaseView {
+    
+    override func setupViews() {
+        super.setupViews()
+        addSubview(loginButton)
+    }
+    override func setupLayouts() {
+        loginButton.snp.makeConstraints { (make) in
+            make.top.equalTo(20)
+            make.bottom.equalTo(-20)
+            make.right.equalTo(-14)
+            make.left.equalTo(14)
+        }
+    }
+
+    lazy var loginButton : UIImageView = {
+        let loginButton = UIImageView()
+        loginButton.image = kImage(name: "notlogin_star_pic_bg")
+        loginButton.addTapGesture(1, target: self, action: #selector(loginButtonAction))
+        return loginButton
+    }()
+    
+    @objc func loginButtonAction()  {
+        kAppDelegate.setLogin()
+    }
+
+}

+ 20 - 3
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Follow/CommunityFollowViewController.swift

@@ -60,6 +60,11 @@ class CommunityFollowViewController: UIViewController {
         return followTableHeaderView
     }()
     
+    private lazy var followLoginTableHeaderView: CommunityFollowLoginTableHeaderView = {
+        let followLoginTableHeaderView = CommunityFollowLoginTableHeaderView(frame: CGRect(x: 0, y: 0, width: kScreenWidth, height: 40 + 155 * kScaleWidth))
+        return followLoginTableHeaderView
+    }()
+    
     func setupData() {
         //下拉刷新
         tableView.addHeader(withBeginRefresh: true, animation: true) {
@@ -185,8 +190,10 @@ extension CommunityFollowViewController {
             self?.cmsMemberListApi()
             
         }
-        queue.async(group: group) { [weak self] in
-            self?.communityFollowFeedApi(page: page)
+        if !UserModel.isTokenNil() {
+            queue.async(group: group) { [weak self] in
+                self?.communityFollowFeedApi(page: page)
+            }
         }
     }
     
@@ -196,8 +203,18 @@ extension CommunityFollowViewController {
             [weak self] (cmsMemberListModel) -> (Void) in
             let cmsMemberListModel = cmsMemberListModel as? CMSMemberListModel
             self?.cmsMemberModels = (cmsMemberListModel?.list)!
+            if UserModel.isTokenNil() {
+                self?.tableView.tableHeaderView = self?.followLoginTableHeaderView
+                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView)
+            }
             self?.tableView.reloadData()
-        }) {_ in }
+
+        }) {
+            [weak self] (loadingStatus) in
+            if UserModel.isTokenNil() {
+                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView)
+            }
+        }
     }
     
     /// 关注feed流

+ 16 - 15
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Main/CommunityViewController.swift

@@ -42,6 +42,7 @@ class CommunityViewController: BaseViewController {
         view.addSubview(listContainerView)
         view.addSubview(navigationBarbgView)
         view.addSubview(communityNavigationBarView)
+        view.addSubview(linebgImageView)
         
     }
     
@@ -70,6 +71,11 @@ class CommunityViewController: BaseViewController {
             make.top.equalTo(segmentedView.snp.bottom)
             make.left.right.bottom.equalToSuperview()
         }
+        linebgImageView.snp.makeConstraints { (make) in
+            make.top.equalTo(segmentedView.snp.bottom)
+            make.left.right.equalToSuperview()
+            make.height.equalTo(20)
+        }
     }
     
     override func setupData() {
@@ -396,6 +402,12 @@ class CommunityViewController: BaseViewController {
         return listContainerView
     }()
     
+    lazy var linebgImageView: UIImageView = {
+        let linebgImageView = UIImageView()
+        linebgImageView.image = kImage(name: "navbar_shadow_pic_up")
+        return linebgImageView
+    }()
+    
     var index : Int?
     
 }
@@ -404,29 +416,18 @@ extension CommunityViewController : JXSegmentedViewDelegate {
     //点击选中或者滚动选中都会调用该方法。适用于只关心选中事件,而不关心具体是点击还是滚动选中的情况。
     func segmentedView(_ segmentedView: JXSegmentedView, didSelectedItemAt index: Int) {
         if index == 0 {
-            if UserModel.isTokenNil() {
-                self.segmentedView.selectItemAt(index: self.index ?? 1)
-                self.segmentedView.defaultSelectedIndex = self.index ?? 1
-                self.listContainerView.defaultSelectedIndex = self.index ?? 1
-                self.segmentedDataSource.reloadData(selectedIndex: self.index ?? 1)
-                kAppDelegate.setLogin()
-            }else {
-                listContainerView.didClickSelectedItem(at: index)
-                communityModuleTopType = .communityModuleFollowTop
-                self.index = index
-            }
+            communityModuleTopType = .communityModuleFollowTop
         }
         if index == 1 {
             communityModuleTopType = .communityModuleRecommendTop
-            listContainerView.didClickSelectedItem(at: index)
-            self.index = index
 
         }
         if index == 2 {
             communityModuleTopType = .communityModulePlanetTop
-            listContainerView.didClickSelectedItem(at: index)
-            self.index = index
         }
+        listContainerView.didClickSelectedItem(at: index)
+
+        self.index = index
         
     }
     

+ 1 - 2
RainbowPlanet/RainbowPlanet/Modules/MineModule/PersonalCenter/PersonalCenterView/PersonViewUserAndOtherListView.swift

@@ -40,10 +40,9 @@ class PersonViewUserAndOtherListView: BaseView {
     var postMyModels = Array<PostMyModel>()
     override func setupViews() {
         addSubview(collectionView)
-        setupData()
     }
     
-    func setupData() {
+    override func setupData() {
         collectionView.addHeader(withBeginRefresh: true, animation: false, refreshBlock: { [weak self] (page) in
             self?.communityPostMyApi(page: page)
         })

+ 1 - 0
RainbowPlanet/RainbowPlanet/Modules/RegisterLoginModule/MobileLogin/ViewController/MobileLoginViewController.swift

@@ -18,6 +18,7 @@ class MobileLoginViewController: BaseViewController {
     }
 
     override  func setupViews() {
+        navigationBar.wr_setBottomLineHidden(hidden: true)
         view.addSubview(mobileLoginView)
     }
 

+ 1 - 0
RainbowPlanet/RainbowPlanet/Modules/RegisterLoginModule/PasswordLogin/ViewController/PasswordLoginViewController.swift

@@ -16,6 +16,7 @@ class PasswordLoginViewController: BaseViewController {
     }
 
     override  func setupViews() {
+        navigationBar.wr_setBottomLineHidden(hidden: true)
         view.addSubview(passwordLoginView)
     }
 

+ 1 - 0
RainbowPlanet/RainbowPlanet/Modules/RegisterLoginModule/RegisterLogin/ViewController/RegisterLoginViewController.swift

@@ -18,6 +18,7 @@ class RegisterLoginViewController: BaseViewController {
     }
 
     override func setupViews() {
+        navigationBar.wr_setBottomLineHidden(hidden: true)
         navigationBar.wr_setRightButton(image: kImage(name: "common_order_close")!)
         navigationBar.leftButton.isHidden = true
         view.backgroundColor = UIColor.white

+ 1 - 1
RainbowPlanet/RainbowPlanet/Modules/SearchModule/Search/View/SearchView.swift

@@ -28,7 +28,7 @@ class SearchView: BaseView {
         }
     }
     
-    func setupData() {
+    override func setupData() {
         
         guard UserDefaults.standard.array(forKey: "SearchHistoryArray")?.isEmpty ?? true else {
             searchHistoryArray = UserDefaults.standard.array(forKey: "SearchHistoryArray") as! [String]

+ 22 - 0
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/NavigationBarIcons/navbar_shadow_pic_down.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "navbar_shadow_pic_down@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "navbar_shadow_pic_down@3x.png",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

BIN
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/NavigationBarIcons/navbar_shadow_pic_down.imageset/navbar_shadow_pic_down@2x.png


BIN
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/NavigationBarIcons/navbar_shadow_pic_down.imageset/navbar_shadow_pic_down@3x.png


+ 22 - 0
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/NavigationBarIcons/navbar_shadow_pic_up.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "navbar_shadow_pic_up@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "navbar_shadow_pic_up@3x.png",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

BIN
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/NavigationBarIcons/navbar_shadow_pic_up.imageset/navbar_shadow_pic_up@2x.png


BIN
RainbowPlanet/RainbowPlanet/Supporting Files/Assets.xcassets/NavigationBarIcons/navbar_shadow_pic_up.imageset/navbar_shadow_pic_up@3x.png


+ 22 - 0
RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/notlogin_star_pic_bg.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "notlogin_star_pic_bg@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "notlogin_star_pic_bg@3x.png",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}

BIN
RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/notlogin_star_pic_bg.imageset/notlogin_star_pic_bg@2x.png


BIN
RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/notlogin_star_pic_bg.imageset/notlogin_star_pic_bg@3x.png


+ 5 - 5
RainbowPlanet/RainbowPlanet/Tools/WRNavigationBar/WRCustomNavigationBar.swift

@@ -131,10 +131,10 @@ class WRCustomNavigationBar: UIView
         return button
     }()
     
-    fileprivate lazy var bottomLine:UIView = {
-        let view = UIView()
-        view.backgroundColor = UIColor(red: (218.0/255.0), green: (218.0/255.0), blue: (218.0/255.0), alpha: 1.0)
-        return view
+    fileprivate lazy var bottomLine:UIImageView = {
+        let bottomLine = UIImageView()
+        bottomLine.image = kImage(name: "navbar_shadow_pic_up")
+        return bottomLine
     }()
     
     fileprivate lazy var backgroundView:UIView = {
@@ -206,7 +206,7 @@ class WRCustomNavigationBar: UIView
         leftButton.frame = CGRect(x: margin, y: top, width: buttonWidth, height: buttonHeight)
         rightButton.frame = CGRect(x: WRScreenWidth-buttonWidth-margin, y: top, width: buttonWidth, height: buttonHeight)
         titleLabel.frame = CGRect(x: (WRScreenWidth-titleLabelWidth)/2.0, y: top, width: titleLabelWidth, height: titleLabelHeight)
-        bottomLine.frame = CGRect(x: 0, y: bounds.height-0.5, width: WRScreenWidth, height: 0.5)
+        bottomLine.frame = CGRect(x: 0, y: bounds.height-0.5, width: WRScreenWidth, height: 20)
     }
 }