Skip to content

marchaumann/Carousel

Repository files navigation

Week 2 - Carousel

Submitted by: Marc Haumann

Time spent: 14 hours spent in total

User Stories

The following required functionality is complete:

  • Static photo tiles on the initial screen
  • Tapping on email/password reveals the keyboard and shifts the scrollview and Sign In button up.
  • If the username or password fields are empty, user sees an error alert.
  • If credentials are incorrect, user sees a loading indicator for 2 seconds followed by an error alert.
  • If the credentials are correct, user sees a loading indicator for 2 seconds followed by a transition to the Sign In screens.
  • User can page between the tutorial screens
  • Display a scrollable view of images in the timeline
  • User can tap on the conversations button to see the conversations screen (push)
  • User can tap on the profile image to see the settings view (bottom modal)
  • User can dismiss the conversations screen
  • User can dismiss the settings screen
  • User can log out

The following optional features are implemented:

  • Photo tiles move, scale, and rotate with scrolling
  • Pulling down on the scrollview dismisses the keyboard.
  • On sign in form appear, scale the form up and fade it in.
  • Create a Dropbox flow
  • Tapping in the form reveals the keyboard and shifts the scrollview and "Create a Dropbox" button up
  • Tapping the Agree to Terms checkbox selects the checkbox
  • Tapping on Terms shows a webview with the terms
  • User is taken to the tutorial screens upon tapping the "Create a Dropbox" button
  • Dots update on tutorial screen paging
  • Upon reaching the 4th tutorial page, hide the dots and show the "Take Carousel for a Spin" button.
  • Learn more about Carousel
  • Show the "Learn more about Carousel" button in the photo timeline.
  • Tap the X to dismiss the banner
  • Track event 1: View a photo full screen
  • Track event 2: Swipe left and right
  • Track event 3: Share a photo
  • Upon completion of the events, mark them green.
  • When all events are completed, dismiss the banner.
  • Present actionsheet on sign out with options to "sign out" or "cancel"

The following additional features are implemented:

  • the photo tile transitions are done in a for loop ("EnumerateSequence") so that code doesn't appear repeated 6 times
  • scaling on the sign in form uses a spring animation
  • On sign in success, the keyboard hides, the button text fades out and the spinner animates to the center of the screen
  • on the walkthrough slides, the dots fade out, and the button fades in (both triggered by different events, one connected directly to scroll position and one triggered by the page #)
  • views animate (image scales and scrollview fades) in and back out of the fullscreen slideshow view (hacked approach, but it gets the feeling across :P)

Video Walkthrough

Here's a walkthrough of implemented user stories:

Video Walkthrough

GIF created with LICECap.

Notes

License

Copyright 2016 Marc Haumann

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.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages