123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195 |
- //
- // PublishRecommendMusicController.swift
- // RainbowPlanet
- //
- // Created by Christopher on 2019/7/16.
- // Copyright © 2019 RainbowPlanet. All rights reserved.
- // 推荐音乐
- import UIKit
- import IQKeyboardManagerSwift
- import SwiftyMediator
- class PublishRecommendMusicController: BaseViewController {
-
- override func didReceiveMemoryWarning() {
- super.didReceiveMemoryWarning()
- }
-
- override func viewDidLoad() {
-
- super.viewDidLoad()
- setupViews()
- setupLayouts()
- setupData()
- }
-
- override func setupViews() {
- statusBarStyle = .lightContent
- navigationBar.barBackgroundColor = UIColor.black
- navigationBar.title = "推荐音乐"
- navigationBar.titleLabelColor = kffffffColor
- navigationBar.wr_setLeftButton(image: kImage(name: "navbar_back_white")!)
- self.view.backgroundColor = UIColor.black
-
- navigationBar.wr_setRightButton(title: "提交", titleColor: kffffffColor)
- navigationBar.rightButton.titleLabel!.font = kRegularFont14
- navigationBar.onClickRightButton = {
- [weak self] in
- let name = self?.nameTextView.text
- let url = self?.linkTextView.text
-
- if name == nil || name == "" {
- SwiftProgressHUD.shared().showText("请填写歌曲名称")
- return
- }
-
- self?.communityUploadMusicApi(name!, url ?? "")
- }
-
- view.addSubview(cardBackView)
- cardBackView.addSubview(sepLineView)
- cardBackView.addSubview(nameTextView)
- cardBackView.addSubview(linkTextView)
-
- view.addSubview(recommendLabel)
- view.addSubview(recommendButton)
- }
-
- override func setupLayouts() {
- cardBackView.snp.makeConstraints { (make) in
- make.top.equalTo(kSafeStatusBarHeight + 44 + 20)
- make.left.equalTo(14)
- make.right.equalTo(-14)
- make.height.equalTo(160)
- }
- sepLineView.snp.makeConstraints { (make) in
- make.top.equalTo(80)
- make.left.equalTo(15)
- make.right.equalTo(-15)
- make.height.equalTo(0.5)
- }
- nameTextView.snp.makeConstraints { (make) in
- make.top.equalTo(20)
- make.left.equalTo(15)
- make.right.equalTo(-15)
- make.height.equalTo(40)
- }
- linkTextView.snp.makeConstraints { (make) in
- make.bottom.equalTo(-20)
- make.left.equalTo(15)
- make.right.equalTo(-15)
- make.height.equalTo(40)
- }
-
- recommendLabel.snp.makeConstraints { (make) in
- make.centerX.equalTo(kScreenWidth*0.5-25)
- make.bottom.equalTo(-(kSafeTabBarHeight+15))
- make.height.equalTo(20)
- }
- recommendButton.snp.makeConstraints { (make) in
- make.left.equalTo(recommendLabel.snp_right).offset(2)
- make.height.equalTo(30)
- make.centerY.equalTo(recommendLabel.snp_centerY)
- make.width.equalTo(75)
- }
- }
-
- override func setupData() {
-
-
- }
-
- lazy var cardBackView: UIView = {
- let cardBackView = UIView()
- cardBackView.backgroundColor = kffffffColor
- cardBackView.cornerRadius = 8
- cardBackView.masksToBounds = true
- return cardBackView
- }()
-
- lazy var sepLineView: UIView = {
- let sepLineView = UIView()
- sepLineView.backgroundColor = k999999Color
- return sepLineView
- }()
-
- private lazy var nameTextView: IQTextView = {
- let nameTextView = IQTextView()
- nameTextView.backgroundColor = kffffffColor
- nameTextView.textColor = UIColor.black
- nameTextView.font = kRegularFont16
- nameTextView.placeholder = "输入歌曲名称"
- nameTextView.placeholderTextColor = k999999Color
- nameTextView.delegate = self
- return nameTextView
- }()
-
- private lazy var linkTextView: IQTextView = {
- let linkTextView = IQTextView()
- linkTextView.backgroundColor = kffffffColor
- linkTextView.textColor = UIColor.black
- linkTextView.font = kRegularFont16
- linkTextView.placeholder = "输入歌曲链接(选填)"
- linkTextView.placeholderTextColor = k999999Color
- linkTextView.delegate = self
- return linkTextView
- }()
-
- lazy var recommendLabel: UILabel = {
- let recommendLabel = UILabel()
- recommendLabel.text = "点击提交代表您同意"
- recommendLabel.textColor = k999999Color
- recommendLabel.font = kRegularFont12
- return recommendLabel
- }()
-
- lazy var recommendButton: UIButton = {
- let recommendButton = UIButton(type: UIButton.ButtonType.custom)
- recommendButton.setTitle("内容授权协议", for: UIControl.State.normal)
- recommendButton.setTitleColor(kffffffColor, for: UIControl.State.normal)
- recommendButton.titleLabel?.font = kMediumFont12
- recommendButton.rx.tap.subscribe(onNext: {
- [weak self] (data) in
- Mediator.push(H5RouterModuleType.pushContentId7)
- }).disposed(by: disposeBag)
- return recommendButton
- }()
-
- }
- // MARK: -
- extension PublishRecommendMusicController: UITextViewDelegate {
- func textViewDidChange(_ textView: UITextView) {
- if textView == nameTextView {
- var fullStr = textView.text ?? ""
- if textView.text?.count ?? 0 > 180 {
- fullStr = String(fullStr.prefix(150)) as String
- textView.text = fullStr
- }
- } else if textView == linkTextView {
- var fullStr = textView.text ?? ""
- if textView.text?.count ?? 0 > 180 {
- fullStr = String(fullStr.prefix(150)) as String
- textView.text = fullStr
- }
- }
- }
-
- }
- extension PublishRecommendMusicController {
- /// 用户上传音乐
- func communityUploadMusicApi(_ name: String, _ url: String) {
- let userName = UserModel.shared().getModel()?.username ?? ""
- let uid = UserModel.shared().getModel()?.uid ?? 0
-
- SwiftMoyaNetWorkServiceCommunity.shared().communityUploadMusicApi(name: name.trimmingCharacters(in: .whitespaces), username: userName, url: url, uid: uid) {[weak self] (data) -> (Void) in
- // 上传成功,返回
- SwiftProgressHUD.shared().showText("提交成功")
- self?.navigationController?.popViewController(animated: true)
- }
-
- }
- }
|