All Projects → mohak1712 → Uberux

mohak1712 / Uberux

Licence: other
Project that demonstrates the entire animation stack present in the Uber app (android)

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Uberux

Airbnb Android Google Map View
This is a sample Android Application which has Google Map view similar to what AirBnb Android Application. Moving Markers like Uber/Ola. Custom Google Search for places. Recycler view with Animations added.
Stars: ✭ 175 (-85.43%)
Mutual labels:  uber, googlemaps
Motion
A library used to create beautiful animations and transitions for iOS.
Stars: ✭ 1,726 (+43.71%)
Mutual labels:  ux, transitions
Transition X
{ } Declarative Kotlin DSL for choreographing Android transitions
Stars: ✭ 514 (-57.2%)
Mutual labels:  ux, transitions
Animatable Component
Animate once, use Everywhere! 💫
Stars: ✭ 188 (-84.35%)
Mutual labels:  ux, transitions
Swiftui Animation Library
SwiftUI Animation Library. Useful SwiftUI animations including Loading/progress, Looping, On-off, Enter, Exit, Fade, Spin and Background animations that you can directly implement in your next iOS application or project. The library also contains huge examples of spring animations such as Inertial Bounce, Shake, Twirl, Jelly, Jiggle, Rubber Band, Kitchen Sink and Wobble effects. Browse, find and download the animation that fits your needs.
Stars: ✭ 898 (-25.23%)
Mutual labels:  transitions, transition-animation
Lax.js
Simple & lightweight (<4kb gzipped) vanilla JavaScript library to create smooth & beautiful animations when you scroll.
Stars: ✭ 8,274 (+588.93%)
Mutual labels:  transitions
Tc Material Design
Série de artigos sobre o Material Design Android
Stars: ✭ 64 (-94.67%)
Mutual labels:  transitions
Ckdcss
A tiny set of micro interactions for your checkboxes.
Stars: ✭ 49 (-95.92%)
Mutual labels:  ux
Material Motion
Starmap and team docs
Stars: ✭ 44 (-96.34%)
Mutual labels:  transitions
Deck.gl
WebGL2 powered visualization framework
Stars: ✭ 9,304 (+674.69%)
Mutual labels:  uber
Seer
🗜 A customizable devtool solution
Stars: ✭ 72 (-94%)
Mutual labels:  uber
Vue Transition Demo
Demo for "Creating Vue.js Transitions & Animation"
Stars: ✭ 60 (-95%)
Mutual labels:  transitions
Imageviewer.swift
An easy to use Image Viewer that is inspired by Facebook
Stars: ✭ 1,071 (-10.82%)
Mutual labels:  ux
Uber Cli
🚗Uber, at your fingertips
Stars: ✭ 1,142 (-4.91%)
Mutual labels:  uber
Control User Cursor
Alter user cursor behavior. Simulates users cursor and can apply transformations to it.
Stars: ✭ 1,050 (-12.57%)
Mutual labels:  ux
Highway
Highway - A Modern Javascript Transitions Manager
Stars: ✭ 1,185 (-1.33%)
Mutual labels:  transitions
Time Capsule
Write a letter to your future self - receive it in one year.
Stars: ✭ 48 (-96%)
Mutual labels:  ux
Vocabulary
A cohesive design system & Vue component library to unify the web-facing Creative Commons
Stars: ✭ 58 (-95.17%)
Mutual labels:  ux
Athenax
SQL-based streaming analytics platform at scale
Stars: ✭ 1,178 (-1.92%)
Mutual labels:  uber
Ant Ux
🎸 A sitemap template for ux design
Stars: ✭ 1,077 (-10.32%)
Mutual labels:  ux

UberUX

Project that demonstrates the entire animation stack present in the Uber app (android)

Demo

Demo

Libraries

  1. FabProgressCircle
  2. Retrofit
  3. RxAndroid
  4. ButterKnife

Concepts

Transitions - For sharing elements between activities

void startTransition() {

       Intent intent = new Intent(LoginActivity.this, LoginWithPhone.class);

       Pair<View, String> p1 = Pair.create((View) ivBack, getString(R.string.transition_arrow));
       Pair<View, String> p2 = Pair.create((View) ivFlag, getString(R.string.transition_ivFlag));
       Pair<View, String> p3 = Pair.create((View) tvCode, getString(R.string.transition_tvCode));
       Pair<View, String> p4 = Pair.create((View) tvPhoneNo, getString(R.string.transition_tvPhoneNo));
       Pair<View, String> p5 = Pair.create((View) llphone, getString(R.string.transition_llPhone));

       ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation(this, p1, p2, p3, p4, p5);
       startActivity(intent, options.toBundle());


   }

ViewPagerTransformer - For performing animations when ViewPager is swiped

ViewPager.PageTransformer pageTransformer = new ViewPager.PageTransformer() {
        @Override
        public void transformPage(View page, float position) {


            if (position < -1) { 


            } else if (position <= 1) { 

                   // animate here
        
                }

            }
        }
    };

Overlays - For creating overlays on map

 public void addOverlay(LatLng place) {

        GroundOverlay groundOverlay = mMap.addGroundOverlay(new
                GroundOverlayOptions()
                .position(place, 100)
                .transparency(0.5f)
                .zIndex(3)
                .image(BitmapDescriptorFactory.fromBitmap(drawableToBitmap(getDrawable(R.drawable.map_overlay)))));

    }

ValueAnimator - For animating overlays and polylines

ValueAnimator tAnimator = ValueAnimator.ofFloat(0, 1);
       tAnimator.setRepeatCount(ValueAnimator.INFINITE);
       tAnimator.setRepeatMode(ValueAnimator.RESTART);
       tAnimator.setInterpolator(new LinearInterpolator());
       tAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
           @Override
           public void onAnimationUpdate(ValueAnimator valueAnimator) {
              // animate here
           }
       });

PolyLines - For drawing lines on map

 PolylineOptions greyOptions = new PolylineOptions();
        greyOptions.width(10);
        greyOptions.color(Color.GRAY);
        greyOptions.startCap(new SquareCap());
        greyOptions.endCap(new SquareCap());
        greyOptions.jointType(ROUND);
        greyPolyLine = mMap.addPolyline(greyOptions);

How to use this project

Add your GoogleMaps and GooglePlaces key to google_maps_api.xml and turn on direction api from developer console -> You are good to go !

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].