Tipper is a tip calculator application for iOS.
Submitted by: Kevin Denis
Time spent: ~12 hours spent in total
The following required functionality is complete:
- User can enter a bill amount, choose a tip percentage, and see the tip and total values.
The following optional features are implemented:
- Settings page to change the default tip percentage.
- UI animations
- Remembering the bill amount across app restarts (if <10mins)
- Using locale-specific currency and currency thousands separators.
- Making sure the keyboard is always visible and the bill amount is always the first responder. This way the user doesn't have to tap anywhere to use this app. Just launch the app and start typing.
The following additional features are implemented:
- Improved, easy-to-use UI.
Here's a walkthrough of implemented user stories:
GIF created with LiceCap.
This was my first attempt at many things, I had not programmed on a mac before this project as I am used to Ubuntu 18.04, I had also never used Xcode before or studied Swift or even created a UI. All these factors gave way to a very interesting learning experience but diving in and sadly having a tight schedule due to exam reschedules made me learn so much through a day that I am glad I attempted my best at this project. The hardest part was getting started as I was very overwhelmed at first, however there is so much documentation plus the codePath videos available that it was really not difficult to become entranced. I rarely found myself frustrated thanks to these resources.
Copyright 2019 Kevin Denis
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.