0

在此处输入图像描述

在此处输入图像描述

我想让它像下面的图片,但它就像上面的图片一样。

这是我的代码。

lazy var button = UIDropDownButton().then {
    $0.setAction().subscribe(onNext: {
        switch $0 {
        case .popularity: break
            // 인기순 정렬 코드
        case .suggestion: break
            // 추천순 정렬 코드
        case .lowestPrice: break
            // 최저가순 정렬 코드
        }
    })
    .disposed(by: disposeBag)
}

lazy var barButtonItem = UIBarButtonItem(customView: button)

override func viewDidLoad() {
    super.viewDidLoad()
    setNavigationBar()
}

override func viewWillAppear(_ animated: Bool) {
    setNavigationBar()
}

private func setNavigationBar() {
    setLargeTitleNavigationBar(title: "제품")
    self.navigationItem.rightBarButtonItem = barButtonItem
    let searchController = UISearchController(searchResultsController: nil)
    self.navigationItem.searchController = searchController
}

setLargeTitleNavigationBar 方法在这里。

extension UIViewController {

func setLargeTitleNavigationBar(title: String) {
    self.navigationController?.navigationBar.prefersLargeTitles = true
    self.navigationController?.setBackButon()
    self.navigationController?.navigationBar.backgroundColor = nil
    self.navigationController?.navigationBar.shadowImage = nil
    self.navigationController?.navigationBar.setBackgroundImage(nil, for: UIBarMetrics.default)
    self.navigationItem.title = title
}

我不知道如何解决这个问题。我喜欢 Snapkit,但我可以阅读故事板。

4

1 回答 1

0

用这个

navigationController?.navigationBar.prefersLargeTitles = true
navigationItem.largeTitleDisplayMode = .always
于 2021-11-18T07:13:37.087 回答