diff --git a/Bark/Assets.xcassets/baseline_filter_drama_black_24pt.imageset/Contents.json b/Bark/Assets.xcassets/baseline_filter_drama_black_24pt.imageset/Contents.json new file mode 100644 index 0000000..483a36d --- /dev/null +++ b/Bark/Assets.xcassets/baseline_filter_drama_black_24pt.imageset/Contents.json @@ -0,0 +1,26 @@ +{ + "images" : [ + { + "filename" : "baseline_filter_drama_black_24pt_1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "baseline_filter_drama_black_24pt_2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "baseline_filter_drama_black_24pt_3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "template-rendering-intent" : "template" + } +} diff --git a/Bark/Assets.xcassets/baseline_filter_drama_black_24pt.imageset/baseline_filter_drama_black_24pt_1x.png b/Bark/Assets.xcassets/baseline_filter_drama_black_24pt.imageset/baseline_filter_drama_black_24pt_1x.png new file mode 100644 index 0000000..76723dd Binary files /dev/null and b/Bark/Assets.xcassets/baseline_filter_drama_black_24pt.imageset/baseline_filter_drama_black_24pt_1x.png differ diff --git a/Bark/Assets.xcassets/baseline_filter_drama_black_24pt.imageset/baseline_filter_drama_black_24pt_2x.png b/Bark/Assets.xcassets/baseline_filter_drama_black_24pt.imageset/baseline_filter_drama_black_24pt_2x.png new file mode 100644 index 0000000..6be4e7c Binary files /dev/null and b/Bark/Assets.xcassets/baseline_filter_drama_black_24pt.imageset/baseline_filter_drama_black_24pt_2x.png differ diff --git a/Bark/Assets.xcassets/baseline_filter_drama_black_24pt.imageset/baseline_filter_drama_black_24pt_3x.png b/Bark/Assets.xcassets/baseline_filter_drama_black_24pt.imageset/baseline_filter_drama_black_24pt_3x.png new file mode 100644 index 0000000..9ee4aea Binary files /dev/null and b/Bark/Assets.xcassets/baseline_filter_drama_black_24pt.imageset/baseline_filter_drama_black_24pt_3x.png differ diff --git a/Controller/MessageListViewController.swift b/Controller/MessageListViewController.swift index c5e0293..c4d9455 100644 --- a/Controller/MessageListViewController.swift +++ b/Controller/MessageListViewController.swift @@ -59,7 +59,7 @@ class MessageListViewController: BaseViewController { navigationItem.searchController?.obscuresBackgroundDuringPresentation = false navigationItem.searchController?.delegate = self - navigationItem.setBarButtonItems(items: [UIBarButtonItem(customView: deleteButton), UIBarButtonItem(customView: groupButton)], left: false) + navigationItem.setBarButtonItems(items: [UIBarButtonItem(customView: deleteButton), UIBarButtonItem(customView: groupButton)], position: .right) self.view.addSubview(tableView) tableView.snp.makeConstraints { make in diff --git a/View/UINavigationItem+Extension.swift b/View/UINavigationItem+Extension.swift index 99998e9..fd6c435 100644 --- a/View/UINavigationItem+Extension.swift +++ b/View/UINavigationItem+Extension.swift @@ -13,16 +13,21 @@ import UIKit // 所以先用 一个 fixedSpace UIBarButtonItem 先把距离给缩短点, // 然后用个 AlignmentRectInsetsOverridable 把自己的按钮往 左/右 挪动,减少距离 // 用 HitTestSlopable 增加点击区域 +enum UINavigationItemPosition { + case left + case right +} + extension UINavigationItem { func setLeftBarButtonItem(item: UIBarButtonItem) { - setBarButtonItems(items: [item], left: true) + setBarButtonItems(items: [item], position: .left) } func setRightBarButtonItem(item: UIBarButtonItem) { - setBarButtonItems(items: [item], left: false) + setBarButtonItems(items: [item], position: .right) } - func setBarButtonItems(items: [UIBarButtonItem], left: Bool) { + func setBarButtonItems(items: [UIBarButtonItem], position: UINavigationItemPosition) { guard items.count > 0 else { self.leftBarButtonItems = nil return @@ -33,7 +38,7 @@ extension UINavigationItem { guard let view = item.customView else { return } item.customView?.translatesAutoresizingMaskIntoConstraints = false (item.customView as? HitTestSlopable)?.hitTestSlop = UIEdgeInsets(top: -10, left: -10, bottom: -10, right: -10) - (item.customView as? AlignmentRectInsetsOverridable)?.alignmentRectInsetsOverride = UIEdgeInsets(top: 0, left: left ? 8 : -8, bottom: 0, right: left ? -8 : 8) + (item.customView as? AlignmentRectInsetsOverridable)?.alignmentRectInsetsOverride = UIEdgeInsets(top: 0, left: position == .left ? 8 : -8, bottom: 0, right: position == .left ? -8 : 8) item.customView?.snp.makeConstraints { make in make.width.equalTo(view.bounds.size.width > 24 ? view.bounds.width : 24) make.height.equalTo(view.bounds.size.height > 24 ? view.bounds.height : 24) @@ -46,7 +51,7 @@ extension UINavigationItem { spacer.width = -8 buttonItems.insert(spacer, at: 0) } - if left { + if position == .left { self.leftBarButtonItems = buttonItems } else {