|
@@ -7,6 +7,8 @@
|
|
|
//
|
|
|
|
|
|
import UIKit
|
|
|
+import DPScrollNumberLabel
|
|
|
+import RxSwift
|
|
|
|
|
|
class CommunityNavigationBarView: BaseView {
|
|
|
|
|
@@ -16,9 +18,12 @@ class CommunityNavigationBarView: BaseView {
|
|
|
override func setupViews() {
|
|
|
addSubview(leftButton)
|
|
|
addSubview(rightButton)
|
|
|
+ addSubview(scrollNumberLabel)
|
|
|
addSubview(searchBgView)
|
|
|
searchBgView.addSubview(searchIconImageView)
|
|
|
searchBgView.addSubview(searchTextField)
|
|
|
+ userMemberGetTotalBeanApi()
|
|
|
+ userMemberGetTotalBeanApiInterval()
|
|
|
}
|
|
|
|
|
|
override func setupLayouts() {
|
|
@@ -31,11 +36,16 @@ class CommunityNavigationBarView: BaseView {
|
|
|
|
|
|
rightButton.snp.makeConstraints { (make) in
|
|
|
make.centerY.equalToSuperview()
|
|
|
- make.right.equalToSuperview().offset(-14)
|
|
|
+ make.right.equalTo(scrollNumberLabel.snp_left).offset(-2)
|
|
|
make.height.equalTo(20)
|
|
|
make.width.greaterThanOrEqualTo(20)
|
|
|
}
|
|
|
- rightButton.layoutButton(edgeInsetsStyle: ButtonEdgeInsetsStyle.left, imageTitleSpace: 2)
|
|
|
+
|
|
|
+ scrollNumberLabel.snp_makeConstraints { (make) in
|
|
|
+ make.centerY.equalToSuperview()
|
|
|
+ make.size.equalTo(scrollNumberLabel.frame.size)
|
|
|
+ make.right.equalToSuperview().offset(-14)
|
|
|
+ }
|
|
|
|
|
|
searchBgView.snp.makeConstraints { (make) in
|
|
|
make.centerY.equalToSuperview()
|
|
@@ -73,12 +83,18 @@ class CommunityNavigationBarView: BaseView {
|
|
|
lazy var rightButton: UIButton = {
|
|
|
let rightButton = UIButton(type: UIButton.ButtonType.custom)
|
|
|
rightButton.setImage(kImage(name: "navbar_bean_org"), for: UIControl.State.normal)
|
|
|
- rightButton.setTitle("999", for: UIControl.State.normal)
|
|
|
rightButton.setTitleColor(kFFA42FColor, for: UIControl.State.normal)
|
|
|
rightButton.titleLabel?.font = kMediumFont16
|
|
|
return rightButton
|
|
|
}()
|
|
|
|
|
|
+ lazy var scrollNumberLabel: DPScrollNumberLabel = {
|
|
|
+// let scrollNumberLabel = DPScrollNumberLabel.init(number: 0, font: kMediumFont16, textColor: kFFA42FColor, signSetting: SignSetting.unsigned)
|
|
|
+ let scrollNumberLabel = DPScrollNumberLabel.init(number: 0, fontSize: 16, textColor: kFFA42FColor, signSetting: SignSetting.unsigned)
|
|
|
+
|
|
|
+ return scrollNumberLabel!
|
|
|
+ }()
|
|
|
+
|
|
|
private lazy var searchBgView: UIView = {
|
|
|
let searchBgView = UIView()
|
|
|
searchBgView.backgroundColor = kf7f8faColor
|
|
@@ -115,3 +131,31 @@ class CommunityNavigationBarView: BaseView {
|
|
|
}
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+extension CommunityNavigationBarView {
|
|
|
+
|
|
|
+ func userMemberGetTotalBeanApi() {
|
|
|
+ SwiftMoyaNetWorkServiceUser.shared().userMemberGetTotalBeanApi(completion: { [weak self] (totalBeanModel) -> (Void) in
|
|
|
+ let totalBeanModel = totalBeanModel as? TotalBeanModel
|
|
|
+ self?.scrollNumberLabel.change(to: NSNumber(integerLiteral: totalBeanModel?.totalBean ?? 0) , animated: true)
|
|
|
+ self?.scrollNumberLabel.snp_remakeConstraints { (make) in
|
|
|
+ make.centerY.equalToSuperview()
|
|
|
+ make.size.equalTo((self?.scrollNumberLabel.frame.size)!)
|
|
|
+ make.right.equalToSuperview().offset(-14)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ func userMemberGetTotalBeanApiInterval() {
|
|
|
+ Observable<Int>.interval(120, scheduler: MainScheduler.instance).subscribe(onNext: { _ in
|
|
|
+ SwiftMoyaNetWorkServiceUser.shared().userMemberGetTotalBeanApi(completion: { [weak self] (totalBeanModel) -> (Void) in
|
|
|
+ let totalBeanModel = totalBeanModel as? TotalBeanModel
|
|
|
+ self?.scrollNumberLabel.change(to: NSNumber(integerLiteral: totalBeanModel?.totalBean ?? 0) , animated: true)
|
|
|
+ self?.scrollNumberLabel.snp_remakeConstraints { (make) in
|
|
|
+ make.centerY.equalToSuperview()
|
|
|
+ make.size.equalTo((self?.scrollNumberLabel.frame.size)!)
|
|
|
+ make.right.equalToSuperview().offset(-14)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }).disposed(by: disposeBag)
|
|
|
+ }
|
|
|
+}
|