TimelineView
final class TimelineView : UIView
extension TimelineView: UITableViewDataSource
extension TimelineView: UITableViewDelegate
extension TimelineView: NSFetchedResultsControllerDelegate
The TimelineView
is a table view that represents a list of transactions sorted by date.
The view listens to the scroll view events to accomplish beautiful animations for the user. If there’s a “pull down” gesture then the numeric keyboard is shown.
-
Different available header modes.
Declaration
Swift
enum HeaderMode
-
Numeric key pad view. Used to apply the transaction amount for new entries.
Declaration
Swift
@IBOutlet weak var numericKeyPadView: UIView!
-
Timeline header including the Search button, balance, etc.
Declaration
Swift
@IBOutlet weak var timelineHeaderView: UIView!
-
Balance: the total of the expenses filtered by the selected date interval.
Declaration
Swift
@IBOutlet weak var totalOfExpensesLabel: UILabel!
-
Balance: the total of the income filtered by the selected date interval.
Declaration
Swift
@IBOutlet weak var totalOfIncomeLabel: UILabel!
-
Table view container view.
Declaration
Swift
@IBOutlet weak var timelineDataView: UIView!
-
Timeline pan gesture recognizer for key pad open/close animation.
Declaration
Swift
@IBOutlet weak var timelinePanGesture: UIPanGestureRecognizer!
-
Timeline header tap gesture recognizer for open/close the key pad.
Declaration
Swift
@IBOutlet weak var timelineTapGesture: UITapGestureRecognizer!
-
Transactions table view sorted by date.
Declaration
Swift
@IBOutlet weak var expensesTableView: UITableView!
-
Listen to header
y
coordinate change events in percentage.Declaration
Swift
let headerNotification: PassthroughSubject<CGFloat, Never>
-
Timeline view model instance.
Declaration
Swift
var viewModel: TimelineViewModel!