From 315f4db49d80bae50bc58ad49c63925908bc0c6a Mon Sep 17 00:00:00 2001 From: zeke <yangsin1031@naver.com> Date: Fri, 11 Jun 2021 17:54:52 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=E2=9C=A8=20IssueToolbar=20=EA=B5=AC?= =?UTF-8?q?=ED=98=84=20(#27)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controller/IssueToolbar.swift | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 iOS/issue-tracker/issue-tracker/Controller/IssueToolbar.swift diff --git a/iOS/issue-tracker/issue-tracker/Controller/IssueToolbar.swift b/iOS/issue-tracker/issue-tracker/Controller/IssueToolbar.swift new file mode 100644 index 000000000..cb1a101be --- /dev/null +++ b/iOS/issue-tracker/issue-tracker/Controller/IssueToolbar.swift @@ -0,0 +1,64 @@ +// +// IssueToolbar.swift +// issue-tracker +// +// Created by 양준혁 on 2021/06/11. +// + +import UIKit + +class IssueToolbar: UIToolbar { + + let checkBoxBarButtonItem: UIBarButtonItem = { + var item = UIBarButtonItem() + item.image = UIImage(systemName: "checkmark.circle") + + return item + }() + + let closeIssueBarButtonItem: UIBarButtonItem = { + var item = UIBarButtonItem() + item.image = UIImage(systemName: "archivebox") + return item + }() + + let labelBarButtonItem: UIBarButtonItem = { + var item = UIBarButtonItem() + item.title = "이슈를 선택하세요" + item.isEnabled = false + return item + }() + + let flexibleBarButtonItem: UIBarButtonItem = { + var item = UIBarButtonItem(barButtonSystemItem: .flexibleSpace, target: nil, action: nil) + return item + }() + + override init(frame: CGRect) { + super.init(frame: frame) + setToolbar() + } + + required init?(coder: NSCoder) { + super.init(coder: coder) + setToolbar() + } + + func setToolbar() { + let items = [checkBoxBarButtonItem, flexibleBarButtonItem, labelBarButtonItem, flexibleBarButtonItem, closeIssueBarButtonItem] + setItems(items, animated: false) + + } + + func setCheckMode(count: Int) { + checkBoxBarButtonItem.image = UIImage(systemName: "checkmark.circle") + labelBarButtonItem.title = "\(count)개의 이슈가 선택됨" + labelBarButtonItem.tintColor = .black + } + + func setUncheckMode() { + checkBoxBarButtonItem.image = UIImage(systemName: "checkmark.circle.fill") + labelBarButtonItem.title = "이슈를 선택하세요" + labelBarButtonItem.tintColor = .lightGray + } +}