├── .gitignore
├── .idea
└── .gitignore
├── External-Tutorial-GridToPager
├── .gitignore
├── build.gradle
├── proguard-rules.pro
└── src
│ ├── androidTest
│ └── java
│ │ └── com
│ │ └── google
│ │ └── samples
│ │ └── gridtopager
│ │ └── MainActivityTest.kt
│ └── main
│ ├── AndroidManifest.xml
│ ├── java
│ └── com
│ │ └── google
│ │ └── samples
│ │ └── gridtopager
│ │ ├── MainActivity.java
│ │ ├── adapter
│ │ ├── GridAdapter.java
│ │ ├── ImageData.java
│ │ └── ImagePagerAdapter.java
│ │ └── fragment
│ │ ├── GridFragment.java
│ │ ├── ImageFragment.java
│ │ └── ImagePagerFragment.java
│ └── res
│ ├── drawable-nodpi
│ ├── animal_2024172.jpg
│ ├── beetle_562035.jpg
│ ├── bug_189903.jpg
│ ├── butterfly_417971.jpg
│ ├── butterfly_dolls_363342.jpg
│ ├── dragonfly_122787.jpg
│ ├── dragonfly_274059.jpg
│ ├── dragonfly_689626.jpg
│ ├── grasshopper_279532.jpg
│ ├── hover_fly_61682.jpg
│ ├── hoverfly_546692.jpg
│ ├── insect_278083.jpg
│ ├── morpho_43483.jpg
│ └── nature_95365.jpg
│ ├── layout
│ ├── activity_main.xml
│ ├── fragment_grid.xml
│ ├── fragment_image.xml
│ ├── fragment_pager.xml
│ └── image_card.xml
│ ├── mipmap-hdpi
│ ├── ic_launcher.png
│ └── ic_launcher_round.png
│ ├── mipmap-mdpi
│ ├── ic_launcher.png
│ └── ic_launcher_round.png
│ ├── mipmap-xhdpi
│ ├── ic_launcher.png
│ └── ic_launcher_round.png
│ ├── mipmap-xxhdpi
│ ├── ic_launcher.png
│ └── ic_launcher_round.png
│ ├── mipmap-xxxhdpi
│ ├── ic_launcher.png
│ └── ic_launcher_round.png
│ ├── transition
│ ├── grid_exit_transition.xml
│ └── image_shared_element_transition.xml
│ ├── values-land
│ └── dimens.xml
│ └── values
│ ├── colors.xml
│ ├── dimens.xml
│ ├── strings.xml
│ └── styles.xml
├── README.md
├── Tutorial1-1Basics
├── .gitignore
├── build.gradle
├── proguard-rules.pro
└── src
│ ├── androidTest
│ └── java
│ │ └── com
│ │ └── example
│ │ └── tutorial1_1basics
│ │ └── ExampleInstrumentedTest.kt
│ ├── main
│ ├── AndroidManifest.xml
│ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ └── tutorial1_1basics
│ │ │ ├── MainActivity.kt
│ │ │ ├── adapter_chapter_selection
│ │ │ ├── BaseAdapter.kt
│ │ │ ├── ChapterSelectionAdapter.kt
│ │ │ └── model
│ │ │ │ └── ActivityClassModel.kt
│ │ │ ├── chapter1_basics
│ │ │ ├── Activity1_1Basics.kt
│ │ │ ├── Activity1_2AnimatorInflater.kt
│ │ │ ├── Activity1_3TranslationVsPosition.kt
│ │ │ └── Activity1_4RotationTranslationPosition.kt
│ │ │ ├── chapter2_animate_views
│ │ │ ├── Activity2_1PulseView.kt
│ │ │ ├── Activity2_2RevealHideCrossFade.kt
│ │ │ ├── Activity2_3CircularReveal.kt
│ │ │ ├── Activity2_4CardFlipAnimation.kt
│ │ │ ├── Activity2_5CurvedMotionAnimation.kt
│ │ │ ├── Activity2_6ZoomAnimation.kt
│ │ │ ├── Activity2_7GradientAnimations.kt
│ │ │ ├── Activity2_8CounterAnimation.kt
│ │ │ ├── Activity2_9CounterSurfaceView.kt
│ │ │ ├── FragmentGradientAnimationDrawable.kt
│ │ │ ├── FragmentGradientArgbEvaluator.kt
│ │ │ └── view
│ │ │ │ ├── CircleView.kt
│ │ │ │ ├── CoroutineSurfaceView.kt
│ │ │ │ ├── CounterSurfaceView.kt
│ │ │ │ ├── CounterTextView.kt
│ │ │ │ └── PulseAnimationView.kt
│ │ │ ├── chapter3_physics
│ │ │ ├── Activity3_1PhysicsBasics.kt
│ │ │ ├── Activity3_2ScaleAndChainedAnimations.kt
│ │ │ ├── Activity3_3FlingAnimation.kt
│ │ │ ├── Activity3_4BNV_TabLayoutPhysics.kt
│ │ │ └── Activity3_5ElasticScale.kt
│ │ │ └── util
│ │ │ └── DisplayUtils.kt
│ └── res
│ │ ├── anim
│ │ ├── anim_blink.xml
│ │ ├── anim_bounce.xml
│ │ ├── anim_fade_in.xml
│ │ ├── anim_fade_out.xml
│ │ ├── anim_move.xml
│ │ ├── anim_rotate.xml
│ │ ├── anim_sequential.xml
│ │ ├── anim_slide_down.xml
│ │ ├── anim_slide_up.xml
│ │ ├── anim_zoom_in.xml
│ │ ├── anim_zoom_out.xml
│ │ └── path_interpolator.xml
│ │ ├── animator
│ │ ├── animator_rotation.xml
│ │ ├── animator_sample.xml
│ │ ├── animator_scale.xml
│ │ ├── animator_sequential.xml
│ │ ├── animator_translate_x.xml
│ │ └── animator_translate_y.xml
│ │ ├── drawable-v24
│ │ └── ic_launcher_foreground.xml
│ │ ├── drawable
│ │ ├── anim_list_gradient.xml
│ │ ├── gradient_green_yellow.xml
│ │ ├── gradient_red_blue.xml
│ │ ├── ic_baseline_favorite_24.xml
│ │ ├── ic_baseline_sports_baseball_24.xml
│ │ ├── ic_baseline_sports_basketball_24.xml
│ │ ├── ic_baseline_sports_soccer_24.xml
│ │ ├── ic_baseline_sports_volleyball_24.xml
│ │ ├── ic_launcher_background.xml
│ │ ├── ic_star.xml
│ │ ├── landscape.jpg
│ │ └── mountains.jpg
│ │ ├── layout
│ │ ├── activity1_1basics.xml
│ │ ├── activity1_2animatorinflater.xml
│ │ ├── activity1_3translation_vs_position.xml
│ │ ├── activity1_4rotate_translate_position.xml
│ │ ├── activity2_1pulseview.xml
│ │ ├── activity2_2reveal_hide_crossfade.xml
│ │ ├── activity2_3circular_reveal.xml
│ │ ├── activity2_4card_flip.xml
│ │ ├── activity2_5curved_motion.xml
│ │ ├── activity2_6zoom_animation.xml
│ │ ├── activity2_7gradient_animations.xml
│ │ ├── activity2_8counter_animation.xml
│ │ ├── activity2_9_counter_surfaceview.xml
│ │ ├── activity3_1physics_basics.xml
│ │ ├── activity3_2scale_and_chained.xml
│ │ ├── activity3_3fling_animation.xml
│ │ ├── activity3_4_bnv_tablayout_physics.xml
│ │ ├── activity3_5elastic_scale.xml
│ │ ├── activity_main.xml
│ │ ├── counter_layout.xml
│ │ ├── fragment_gradient_animation_drawable.xml
│ │ ├── fragment_gradient_argb_evaluator.xml
│ │ ├── mock_layout.xml
│ │ └── row_layout.xml
│ │ ├── menu
│ │ └── menu_bottom_navigation.xml
│ │ ├── mipmap-anydpi-v26
│ │ ├── ic_launcher.xml
│ │ └── ic_launcher_round.xml
│ │ ├── mipmap-hdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-mdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── values-night
│ │ └── themes.xml
│ │ └── values
│ │ ├── colors.xml
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── themes.xml
│ └── test
│ └── java
│ └── com
│ └── example
│ └── tutorial1_1basics
│ └── ExampleUnitTest.kt
├── Tutorial2-1AnimatedVectorDrawables
├── .gitignore
├── build.gradle
├── proguard-rules.pro
└── src
│ ├── androidTest
│ └── java
│ │ └── com
│ │ └── smarttoolfactory
│ │ └── tutorial2_1animatedvectordrawables
│ │ └── ExampleInstrumentedTest.kt
│ ├── main
│ ├── AndroidManifest.xml
│ ├── java
│ │ └── com
│ │ │ └── smarttoolfactory
│ │ │ └── tutorial2_1animatedvectordrawables
│ │ │ ├── Activity1_1Basics.kt
│ │ │ ├── Activity1_2StateChange.kt
│ │ │ ├── Activity1_3BottomNavIcons.kt
│ │ │ ├── MainActivity.kt
│ │ │ ├── adapter
│ │ │ ├── BaseAdapter.kt
│ │ │ ├── ChapterSelectionAdapter.kt
│ │ │ ├── MultipleViewBinderListAdapter.kt
│ │ │ ├── itemdecoration
│ │ │ │ └── GridSpacingItemDecoration.kt
│ │ │ ├── model
│ │ │ │ └── ActivityClassModel.kt
│ │ │ └── viewholder
│ │ │ │ ├── AVDViewBinder.kt
│ │ │ │ ├── HeaderViewBinder.kt
│ │ │ │ ├── ImageButtonViewBinder.kt
│ │ │ │ ├── ItemDiffCallback.kt
│ │ │ │ ├── SeekableVDViewBinder.kt
│ │ │ │ └── ViewBinders.kt
│ │ │ └── model
│ │ │ ├── AVDModel.kt
│ │ │ └── HeaderModel.kt
│ └── res
│ │ ├── animator
│ │ ├── button_frown.xml
│ │ ├── comment_add_to_lines.xml
│ │ ├── comment_lines_add_rotate.xml
│ │ ├── comment_lines_to_add.xml
│ │ ├── disable_text_entry.xml
│ │ ├── selected_comment.xml
│ │ ├── show_connection_cross.xml
│ │ ├── show_connection_line.xml
│ │ ├── trimclip_heart_draw_stroke.xml
│ │ ├── trimclip_heart_fade_out.xml
│ │ ├── trimclip_searchback_hide_arrow_head.xml
│ │ ├── trimclip_searchback_show_arrow_head.xml
│ │ ├── upload_arrow_fill.xml
│ │ ├── upload_complete.xml
│ │ └── upvote.xml
│ │ ├── drawable-v24
│ │ └── ic_launcher_foreground.xml
│ │ ├── drawable
│ │ ├── asl_bnv_account.xml
│ │ ├── asl_bnv_dashboard.xml
│ │ ├── asl_bnv_home.xml
│ │ ├── asl_bnv_notification.xml
│ │ ├── asl_checkable_checkbox.xml
│ │ ├── asl_checkable_expandcollapse.xml
│ │ ├── asl_checkable_radiobutton.xml
│ │ ├── asl_heart_break.xml
│ │ ├── asl_heart_unfill.xml
│ │ ├── asl_pathmorph_arrowoverflow.xml
│ │ ├── asl_pathmorph_crosstick.xml
│ │ ├── asl_pathmorph_drawer.xml
│ │ ├── asl_pathmorph_plusminus.xml
│ │ ├── asl_trimclip_airplane.xml
│ │ ├── asl_trimclip_flashlight.xml
│ │ ├── asl_trimclip_heart.xml
│ │ ├── asl_trimclip_searchback.xml
│ │ ├── avd_account.xml
│ │ ├── avd_account2.xml
│ │ ├── avd_add_to_comment.xml
│ │ ├── avd_checkable_checkbox_checked_to_unchecked.xml
│ │ ├── avd_checkable_checkbox_unchecked_to_checked.xml
│ │ ├── avd_checkable_expandcollapse_collapsed_to_expanded.xml
│ │ ├── avd_checkable_expandcollapse_expanded_to_collapsed.xml
│ │ ├── avd_checkable_radiobutton_checked_to_unchecked.xml
│ │ ├── avd_checkable_radiobutton_unchecked_to_checked.xml
│ │ ├── avd_clock_alarm.xml
│ │ ├── avd_clock_clock.xml
│ │ ├── avd_clock_stopwatch.xml
│ │ ├── avd_comment_to_add.xml
│ │ ├── avd_compass_rotation.xml
│ │ ├── avd_dashboard.xml
│ │ ├── avd_day_to_night.xml
│ │ ├── avd_heart_empty_to_filled.xml
│ │ ├── avd_heart_fill_color.xml
│ │ ├── avd_heart_filled_to_broken.xml
│ │ ├── avd_heart_filled_to_unfilled.xml
│ │ ├── avd_hide_password.xml
│ │ ├── avd_home.xml
│ │ ├── avd_hourglass.xml
│ │ ├── avd_likes.xml
│ │ ├── avd_night_to_day.xml
│ │ ├── avd_no_connection.xml
│ │ ├── avd_notification.xml
│ │ ├── avd_notification_ring.xml
│ │ ├── avd_pathmorph_arrowoverflow_arrow_to_overflow.xml
│ │ ├── avd_pathmorph_arrowoverflow_overflow_to_arrow.xml
│ │ ├── avd_pathmorph_crosstick_cross_to_tick.xml
│ │ ├── avd_pathmorph_crosstick_tick_to_cross.xml
│ │ ├── avd_pathmorph_drawer_arrow_to_hamburger.xml
│ │ ├── avd_pathmorph_drawer_hamburger_to_arrow.xml
│ │ ├── avd_pathmorph_plusminus_minus_to_plus.xml
│ │ ├── avd_pathmorph_plusminus_plus_to_minus.xml
│ │ ├── avd_settings.xml
│ │ ├── avd_share.xml
│ │ ├── avd_show_password.xml
│ │ ├── avd_trimclip_airplane_disabled_to_enabled.xml
│ │ ├── avd_trimclip_airplane_enabled_to_disabled.xml
│ │ ├── avd_trimclip_flashlight_disabled_to_enabled.xml
│ │ ├── avd_trimclip_flashlight_enabled_to_disabled.xml
│ │ ├── avd_trimclip_heart_break.xml
│ │ ├── avd_trimclip_heart_fill.xml
│ │ ├── avd_trimclip_searchback_back_to_search.xml
│ │ ├── avd_trimclip_searchback_search_to_back.xml
│ │ ├── avd_views.xml
│ │ ├── ic_baseline_explore_24.xml
│ │ ├── ic_baseline_notifications_active_24.xml
│ │ ├── ic_comment_add.xml
│ │ ├── ic_comment_lines.xml
│ │ ├── ic_launcher_background.xml
│ │ ├── vd_account_active.xml
│ │ ├── vd_account_outlined.xml
│ │ ├── vd_activity1_1heart.xml
│ │ ├── vd_checkable_checkbox_checked.xml
│ │ ├── vd_checkable_checkbox_unchecked.xml
│ │ ├── vd_checkable_expandcollapse_collapsed.xml
│ │ ├── vd_checkable_expandcollapse_expanded.xml
│ │ ├── vd_checkable_radiobutton_checked.xml
│ │ ├── vd_checkable_radiobutton_unchecked.xml
│ │ ├── vd_clock_alarm.xml
│ │ ├── vd_clock_clock.xml
│ │ ├── vd_clock_stopwatch.xml
│ │ ├── vd_dashboard_active.xml
│ │ ├── vd_dashboard_outlined.xml
│ │ ├── vd_heart_empty.xml
│ │ ├── vd_heart_filled.xml
│ │ ├── vd_home_active.xml
│ │ ├── vd_home_outlined.xml
│ │ ├── vd_no_connection.xml
│ │ ├── vd_notification_active.xml
│ │ ├── vd_notification_outlined.xml
│ │ ├── vd_pathmorph_arrowoverflow_arrow.xml
│ │ ├── vd_pathmorph_arrowoverflow_overflow.xml
│ │ ├── vd_pathmorph_crosstick_cross.xml
│ │ ├── vd_pathmorph_crosstick_tick.xml
│ │ ├── vd_pathmorph_drawer_arrow.xml
│ │ ├── vd_pathmorph_drawer_hamburger.xml
│ │ ├── vd_pathmorph_plusminus_minus.xml
│ │ ├── vd_pathmorph_plusminus_plus.xml
│ │ ├── vd_profile.xml
│ │ ├── vd_trimclip_airplane_disabled.xml
│ │ ├── vd_trimclip_airplane_enabled.xml
│ │ ├── vd_trimclip_flashlight_disabled.xml
│ │ ├── vd_trimclip_flashlight_enabled.xml
│ │ ├── vd_trimclip_heart_break.xml
│ │ ├── vd_trimclip_heart_empty.xml
│ │ ├── vd_trimclip_heart_full.xml
│ │ ├── vd_trimclip_searchback_back.xml
│ │ └── vd_trimclip_searchback_search.xml
│ │ ├── interpolator
│ │ ├── checkable_checkbox_tochecked_0.xml
│ │ ├── checkable_checkbox_tochecked_1.xml
│ │ ├── checkable_checkbox_tounchecked_0.xml
│ │ ├── checkable_checkbox_tounchecked_1.xml
│ │ ├── checkable_radiobutton.xml
│ │ ├── clock_clock_0.xml
│ │ ├── clock_clock_1.xml
│ │ ├── pathmorph_expandcollapse.xml
│ │ ├── slow_out_fast_in.xml
│ │ ├── trim_end_interpolator.xml
│ │ └── trim_start_interpolator.xml
│ │ ├── layout
│ │ ├── activity1_1basics.xml
│ │ ├── activity1_2state_change.xml
│ │ ├── activity1_3bnv_icons.xml
│ │ ├── activity_main.xml
│ │ ├── item_animated_vector_drawable.xml
│ │ ├── item_header.xml
│ │ ├── item_image_button.xml
│ │ ├── item_seekable_vd.xml
│ │ └── row_layout.xml
│ │ ├── menu
│ │ └── menu_bottom_navigation.xml
│ │ ├── mipmap-anydpi-v26
│ │ ├── ic_launcher.xml
│ │ └── ic_launcher_round.xml
│ │ ├── mipmap-hdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-mdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── values-night
│ │ └── themes.xml
│ │ └── values
│ │ ├── checkable_expandcollapse.xml
│ │ ├── checkable_radiobutton.xml
│ │ ├── colors.xml
│ │ ├── comment_lines_add.xml
│ │ ├── integers.xml
│ │ ├── no_connection.xml
│ │ ├── password_visibility.xml
│ │ ├── pathmorph_arrowoverflow.xml
│ │ ├── pathmorph_crosstick.xml
│ │ ├── pathmorph_drawer.xml
│ │ ├── pathmorph_plusminus.xml
│ │ ├── paths.xml
│ │ ├── share_anim.xml
│ │ ├── strings.xml
│ │ ├── themes.xml
│ │ ├── trimclip_airplane.xml
│ │ ├── trimclip_flashlight.xml
│ │ ├── trimclip_heart.xml
│ │ └── trimclip_searchback.xml
│ └── test
│ └── java
│ └── com
│ └── smarttoolfactory
│ └── tutorial2_1animatedvectordrawables
│ └── ExampleUnitTest.kt
├── Tutorial3-1Transitions
├── .gitignore
├── build.gradle
├── proguard-rules.pro
└── src
│ ├── androidTest
│ └── java
│ │ └── com
│ │ └── smarttoolfactory
│ │ └── tutorial3_1transitions
│ │ └── ExampleInstrumentedTest.kt
│ ├── main
│ ├── AndroidManifest.xml
│ ├── java
│ │ └── com
│ │ │ └── smarttoolfactory
│ │ │ └── tutorial3_1transitions
│ │ │ ├── CustomSwipeRefreshLayout.kt
│ │ │ ├── ImageData.kt
│ │ │ ├── MainActivity.kt
│ │ │ ├── MockDataCreator.kt
│ │ │ ├── TransitionAdapter.kt
│ │ │ ├── adapter
│ │ │ ├── BaseAdapter.kt
│ │ │ ├── ChapterSelectionAdapter.kt
│ │ │ ├── ItemDiffCallback.kt
│ │ │ ├── MultipleViewBinderListAdapter.kt
│ │ │ ├── SingleViewBinderListAdapter.kt
│ │ │ ├── TravelAdapter.kt
│ │ │ ├── animator
│ │ │ │ └── PostItemAnimator.kt
│ │ │ ├── itemdecoration
│ │ │ │ ├── GridMarginDecoration.kt
│ │ │ │ └── GridSpacingItemDecoration.kt
│ │ │ ├── layoutmanager
│ │ │ │ ├── ScaledLinearLayoutManager.kt
│ │ │ │ └── SpannedGridLayoutManager.kt
│ │ │ ├── model
│ │ │ │ ├── ActivityClassModel.kt
│ │ │ │ ├── HeaderModel.kt
│ │ │ │ ├── ImageModel.kt
│ │ │ │ ├── MagazineListModel.kt
│ │ │ │ ├── MagazineModel.kt
│ │ │ │ ├── Post.kt
│ │ │ │ ├── PostCardModel.kt
│ │ │ │ └── TravelModel.kt
│ │ │ └── viewholder
│ │ │ │ ├── HeaderViewBinder.kt
│ │ │ │ ├── ImageDestinationViewBinder.kt
│ │ │ │ ├── ImageTravelDetailViewBinder.kt
│ │ │ │ ├── ImageViewBinder.kt
│ │ │ │ ├── MagazineListViewBinder.kt
│ │ │ │ ├── MagazineViewBinder.kt
│ │ │ │ ├── PostGridViewBinder.kt
│ │ │ │ ├── PostViewBinder.kt
│ │ │ │ └── ViewBinders.kt
│ │ │ ├── chapter1_activity_transitions
│ │ │ ├── Activity1_0CustomTransitions.kt
│ │ │ ├── Activity1_1Details.kt
│ │ │ ├── Activity1_1SharedTransitionBasics.kt
│ │ │ ├── Activity1_2Details.kt
│ │ │ ├── Activity1_2RecyclerViewTransition.kt
│ │ │ ├── Activity1_3Details.kt
│ │ │ ├── Activity1_3RecyclerViewToViewPager2Transition.kt
│ │ │ ├── Activity1_4Details.kt
│ │ │ ├── Activity1_4RVtoVP2Transition.kt
│ │ │ ├── Activity1_5Details.kt
│ │ │ └── Activity1_5RecyclerViewTransition2.kt
│ │ │ ├── chapter2_fragment_transitions
│ │ │ ├── Activity2_1FragmentTransitionsBasics.kt
│ │ │ ├── Activity2_2FragmentTransitionLifeCycles.kt
│ │ │ ├── Activity2_3FragmentTransitions.kt
│ │ │ ├── Activity2_4FragmentTransitionsWithNavComponents.kt
│ │ │ ├── Activity2_5FragmentTransitionsWithToolbar.kt
│ │ │ ├── Activity2_6FragmentExpandCollapseTransitions.kt
│ │ │ ├── Fragment2_1Basics.kt
│ │ │ ├── Fragment2_1Details.kt
│ │ │ ├── Fragment2_2LifeCycleFirst.kt
│ │ │ ├── Fragment2_2LifeCycleSecond.kt
│ │ │ ├── Fragment2_3ImageDetail.kt
│ │ │ ├── Fragment2_3ImageList.kt
│ │ │ ├── Fragment2_4MagazineDetail.kt
│ │ │ ├── Fragment2_4MagazineList.kt
│ │ │ ├── Fragment2_5ToolbarDetail.kt
│ │ │ ├── Fragment2_5ToolbarDetailAlt.kt
│ │ │ ├── Fragment2_5ToolbarDetailAlt2.kt
│ │ │ ├── Fragment2_5ToolbarList.kt
│ │ │ ├── Fragment2_6Compose.kt
│ │ │ ├── Fragment2_6ExpandCollapseDetails.kt
│ │ │ ├── Fragment2_6ExpandCollapseList.kt
│ │ │ └── TransitionLifeCycleViewModel.kt
│ │ │ ├── constant
│ │ │ └── Constants.kt
│ │ │ ├── fragment
│ │ │ └── ImageFragment.kt
│ │ │ └── transition
│ │ │ ├── AlphaForcedTransition.kt
│ │ │ ├── AlphaTransition.kt
│ │ │ ├── AnimUtils.kt
│ │ │ ├── BackgroundColorForcedTransition.kt
│ │ │ ├── BackgroundColorTransition.kt
│ │ │ ├── ChangeColor.java
│ │ │ ├── ChangeOutlineRadiusTransition.kt
│ │ │ ├── PropagatingTransition.kt
│ │ │ ├── RotateX.kt
│ │ │ ├── RotationForcedTransition.kt
│ │ │ ├── RotationTransition.kt
│ │ │ ├── ScaleForcedTransition.kt
│ │ │ ├── ScaleTransition.kt
│ │ │ ├── TextColorForcedTransition.kt
│ │ │ ├── TextColorTransition.kt
│ │ │ ├── TransitionXAdapter.kt
│ │ │ └── visibility
│ │ │ ├── AlphaChange.kt
│ │ │ ├── BackgroundChange.kt
│ │ │ ├── BaseVisibility.kt
│ │ │ ├── CircularReveal.kt
│ │ │ ├── ExplodeFadeOut.kt
│ │ │ ├── ForcedCircularReveal.kt
│ │ │ ├── ForcedExplode.kt
│ │ │ ├── ForcedExplodeFadeOut.kt
│ │ │ ├── ForcedFade.kt
│ │ │ ├── ForcedSlide.kt
│ │ │ ├── RotationChange.kt
│ │ │ ├── ScaleChange.kt
│ │ │ └── TextColorChange.kt
│ └── res
│ │ ├── animator
│ │ ├── fab_hide.xml
│ │ └── fab_show.xml
│ │ ├── color
│ │ └── bottom_nav_color.xml
│ │ ├── drawable-nodpi
│ │ ├── landscape1.jpg
│ │ ├── landscape10.jpg
│ │ ├── landscape2.jpg
│ │ ├── landscape3.jpg
│ │ ├── landscape4.jpg
│ │ ├── landscape5.jpg
│ │ ├── landscape6.jpg
│ │ ├── landscape7.jpg
│ │ ├── landscape8.jpg
│ │ ├── landscape9.jpg
│ │ ├── mag1.jpg
│ │ ├── mag2.jpg
│ │ ├── mag3.jpg
│ │ ├── mag4.jpg
│ │ ├── mag5.jpg
│ │ ├── mag6.jpg
│ │ └── mag7.jpg
│ │ ├── drawable-v24
│ │ └── ic_launcher_foreground.xml
│ │ ├── drawable
│ │ ├── asl_bnv_account.xml
│ │ ├── asl_bnv_dashboard.xml
│ │ ├── asl_bnv_home.xml
│ │ ├── asl_bnv_notification.xml
│ │ ├── asl_edit_reply.xml
│ │ ├── asl_heart_break.xml
│ │ ├── avatar_1_raster.png
│ │ ├── avatar_2_raster.png
│ │ ├── avatar_3_raster.png
│ │ ├── avatar_4_raster.png
│ │ ├── avatar_5_raster.png
│ │ ├── avatar_6_raster.png
│ │ ├── avd_account.xml
│ │ ├── avd_dashboard.xml
│ │ ├── avd_edit_to_reply.xml
│ │ ├── avd_heart_empty_to_filled.xml
│ │ ├── avd_heart_filled_to_broken.xml
│ │ ├── avd_home.xml
│ │ ├── avd_notification.xml
│ │ ├── avd_reply_to_edit.xml
│ │ ├── ic_arrow_back.xml
│ │ ├── ic_baseline_account_circle_24.xml
│ │ ├── ic_baseline_add_24.xml
│ │ ├── ic_baseline_expand_less_24.xml
│ │ ├── ic_baseline_expand_more_24.xml
│ │ ├── ic_baseline_home_24.xml
│ │ ├── ic_baseline_more_vert_24.xml
│ │ ├── ic_baseline_remove_24.xml
│ │ ├── ic_baseline_search_24.xml
│ │ ├── ic_bookmark.xml
│ │ ├── ic_close.xml
│ │ ├── ic_delete.xml
│ │ ├── ic_edit.xml
│ │ ├── ic_favorite.xml
│ │ ├── ic_launcher_background.xml
│ │ ├── ic_reply_all.xml
│ │ ├── ic_share.xml
│ │ ├── ic_twotone_add_circle_outline.xml
│ │ ├── ic_twotone_delete.xml
│ │ ├── ic_twotone_send.xml
│ │ ├── ic_twotone_star_on_background.xml
│ │ ├── ic_twotone_stars.xml
│ │ ├── vd_account_active.xml
│ │ ├── vd_account_outlined.xml
│ │ ├── vd_dashboard_active.xml
│ │ ├── vd_dashboard_outlined.xml
│ │ ├── vd_heart_empty.xml
│ │ ├── vd_heart_filled.xml
│ │ ├── vd_home_active.xml
│ │ ├── vd_home_outlined.xml
│ │ ├── vd_notification_active.xml
│ │ └── vd_notification_outlined.xml
│ │ ├── layout
│ │ ├── activity1_0custom_transitions.xml
│ │ ├── activity1_1basics.xml
│ │ ├── activity1_1details.xml
│ │ ├── activity1_2details.xml
│ │ ├── activity1_2recyclerview_transition.xml
│ │ ├── activity1_3details.xml
│ │ ├── activity1_3recyclerview_to_viewpager2_transition.xml
│ │ ├── activity1_5details.xml
│ │ ├── activity1_5recyclerview_transition2.xml
│ │ ├── activity2_1fragment_transitions_bacis.xml
│ │ ├── activity2_2fragment_transition_lifecycles.xml
│ │ ├── activity2_3fragment_transitions.xml
│ │ ├── activity2_4nav_shared_transition.xml
│ │ ├── activity2_5toolbar_transition_propagation.xml
│ │ ├── activity2_6_rv_transitions_expand.xml
│ │ ├── activity_main.xml
│ │ ├── fragment2_1basics.xml
│ │ ├── fragment2_1details.xml
│ │ ├── fragment2_2lifecycle_first.xml
│ │ ├── fragment2_2lifecycle_second.xml
│ │ ├── fragment2_3details.xml
│ │ ├── fragment2_3recyclerview.xml
│ │ ├── fragment2_4magazine_detail.xml
│ │ ├── fragment2_4magazine_list.xml
│ │ ├── fragment2_5toolbar_detail.xml
│ │ ├── fragment2_5toolbar_detail_alt.xml
│ │ ├── fragment2_5toolbar_detail_alt2.xml
│ │ ├── fragment2_5toolbar_list.xml
│ │ ├── fragment2_6compose.xml
│ │ ├── fragment2_6expand_collapse_detail.xml
│ │ ├── fragment2_6expand_collapse_list.xml
│ │ ├── fragment_image.xml
│ │ ├── item_avatar.xml
│ │ ├── item_header.xml
│ │ ├── item_image.xml
│ │ ├── item_image_destination.xml
│ │ ├── item_image_detail_grid.xml
│ │ ├── item_magazine.xml
│ │ ├── item_magazine_list.xml
│ │ ├── item_post.xml
│ │ ├── item_post_grid.xml
│ │ ├── item_travel.xml
│ │ └── row_layout.xml
│ │ ├── menu
│ │ ├── main.xml
│ │ ├── menu_add_remove.xml
│ │ ├── menu_bottom_navigation.xml
│ │ └── play_store.xml
│ │ ├── mipmap-anydpi-v26
│ │ ├── ic_launcher.xml
│ │ └── ic_launcher_round.xml
│ │ ├── mipmap-hdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-mdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── navigation
│ │ ├── nav_graph2_4.xml
│ │ ├── nav_graph2_5.xml
│ │ └── nav_graph2_6.xml
│ │ ├── transition
│ │ ├── activity2_detail_transition.xml
│ │ ├── activity3_detail_transition.xml
│ │ ├── activity5_detail_transition.xml
│ │ ├── arc.xml
│ │ ├── grid_exit.xml
│ │ ├── grid_exit_transition.xml
│ │ ├── grid_reenter.xml
│ │ ├── icon_expand_toggle.xml
│ │ ├── move.xml
│ │ ├── shared_main_detail.xml
│ │ └── slide.xml
│ │ ├── values-night
│ │ └── themes.xml
│ │ ├── values-v29
│ │ └── color.xml
│ │ └── values
│ │ ├── attrs_alpha_transition.xml
│ │ ├── attrs_background_color_change.xml
│ │ ├── attrs_circular_reveal.xml
│ │ ├── attrs_rotation_transition.xml
│ │ ├── attrs_scale_transition.xml
│ │ ├── attrs_text_color_change.xml
│ │ ├── colors.xml
│ │ ├── layout.xml
│ │ ├── motion.xml
│ │ ├── strings.xml
│ │ ├── themes.xml
│ │ └── transition_names.xml
│ └── test
│ └── java
│ └── com
│ └── smarttoolfactory
│ └── tutorial3_1transitions
│ └── ExampleUnitTest.kt
├── anim_res
├── heart_fill.shapeshifter
├── heart_unfill.shapeshifter
├── heartbreak.shapeshifter
└── notification.shapeshifter
├── build.gradle
├── gradle.properties
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── screenshots
├── avd_chapter1_1.gif
├── avd_chapter1_2.gif
├── avd_chapter1_3.gif
├── chapter2_3circular_reveal.gif
├── chapter2_4flip.gif
├── chapter2_6zoom.gif
├── chapter2_7gradient.gif
├── chapter2_8counter_textview.gif
├── chapter2_9_counter_surfaceview.gif
├── chapter3_1physics_basics.gif
├── chapter3_2scale_and_chain.gif
├── chapter3_3fling_animation.gif
├── chapter3_4bnv_tablayout_animation.gif
├── chapter3_5elastic_scale.gif
├── shape_shifter.png
├── transition_chapter1_2.gif
├── transition_chapter1_4.gif
├── transition_chapter2_5_1.gif
├── transition_chapter2_5_2.gif
├── transition_chapter2_5_3.gif
└── transition_chapter2_6_1.gif
└── settings.gradle
/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | .gradle
3 | /local.properties
4 | /.idea/*
5 | /.idea/caches
6 | /.idea/libraries
7 | /.idea/modules.xml
8 | /.idea/workspace.xml
9 | /.idea/navEditor.xml
10 | /.idea/assetWizardSettings.xml
11 | .DS_Store
12 | /build
13 | /captures
14 | .externalNativeBuild
15 | .cxx
16 | local.properties
--------------------------------------------------------------------------------
/.idea/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/.idea/.gitignore
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in /Users/google.samples/Library/Android/sdk/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 |
12 | # If your project uses WebView with JS, uncomment the following
13 | # and specify the fully qualified class name to the JavaScript interface
14 | # class:
15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
16 | # public *;
17 | #}
18 |
19 | # Uncomment this to preserve the line number information for
20 | # debugging stack traces.
21 | #-keepattributes SourceFile,LineNumberTable
22 |
23 | # If you keep the line number information, uncomment this to
24 | # hide the original source file name.
25 | #-renamesourcefileattribute SourceFile
26 |
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/animal_2024172.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/animal_2024172.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/beetle_562035.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/beetle_562035.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/bug_189903.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/bug_189903.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/butterfly_417971.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/butterfly_417971.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/butterfly_dolls_363342.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/butterfly_dolls_363342.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/dragonfly_122787.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/dragonfly_122787.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/dragonfly_274059.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/dragonfly_274059.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/dragonfly_689626.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/dragonfly_689626.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/grasshopper_279532.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/grasshopper_279532.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/hover_fly_61682.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/hover_fly_61682.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/hoverfly_546692.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/hoverfly_546692.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/insect_278083.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/insect_278083.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/morpho_43483.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/morpho_43483.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/nature_95365.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/drawable-nodpi/nature_95365.jpg
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
23 |
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/layout/fragment_image.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/layout/fragment_pager.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/External-Tutorial-GridToPager/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/transition/image_shared_element_transition.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/values-land/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 | 3
20 |
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 | #3F51B5
20 | #303F9F
21 | #FF4081
22 |
23 |
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 | 2
20 |
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 | Grid to Pager
19 | Image
20 |
21 |
--------------------------------------------------------------------------------
/External-Tutorial-GridToPager/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 |
20 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/.gitignore:
--------------------------------------------------------------------------------
1 | /build
--------------------------------------------------------------------------------
/Tutorial1-1Basics/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # You can control the set of applied configuration files using the
3 | # proguardFiles setting in build.gradle.
4 | #
5 | # For more details, see
6 | # http://developer.android.com/guide/developing/tools/proguard.html
7 |
8 | # If your project uses WebView with JS, uncomment the following
9 | # and specify the fully qualified class name to the JavaScript interface
10 | # class:
11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12 | # public *;
13 | #}
14 |
15 | # Uncomment this to preserve the line number information for
16 | # debugging stack traces.
17 | #-keepattributes SourceFile,LineNumberTable
18 |
19 | # If you keep the line number information, uncomment this to
20 | # hide the original source file name.
21 | #-renamesourcefileattribute SourceFile
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/androidTest/java/com/example/tutorial1_1basics/ExampleInstrumentedTest.kt:
--------------------------------------------------------------------------------
1 | package com.example.tutorial1_1basics
2 |
3 | import androidx.test.platform.app.InstrumentationRegistry
4 | import androidx.test.ext.junit.runners.AndroidJUnit4
5 |
6 | import org.junit.Test
7 | import org.junit.runner.RunWith
8 |
9 | import org.junit.Assert.*
10 |
11 | /**
12 | * Instrumented test, which will execute on an Android device.
13 | *
14 | * See [testing documentation](http://d.android.com/tools/testing).
15 | */
16 | @RunWith(AndroidJUnit4::class)
17 | class ExampleInstrumentedTest {
18 | @Test
19 | fun useAppContext() {
20 | // Context of the app under test.
21 | val appContext = InstrumentationRegistry.getInstrumentation().targetContext
22 | assertEquals("com.example.tutorial1_1basics", appContext.packageName)
23 | }
24 | }
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/java/com/example/tutorial1_1basics/adapter_chapter_selection/model/ActivityClassModel.kt:
--------------------------------------------------------------------------------
1 | package com.example.tutorial1_1basics.adapter_chapter_selection.model
2 |
3 | data class ActivityClassModel(val clazz: Class<*>, val description: String = clazz.name)
4 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/java/com/example/tutorial1_1basics/chapter2_animate_views/Activity2_1PulseView.kt:
--------------------------------------------------------------------------------
1 | package com.example.tutorial1_1basics.chapter2_animate_views
2 |
3 | import android.os.Bundle
4 | import androidx.appcompat.app.AppCompatActivity
5 | import com.example.tutorial1_1basics.R
6 |
7 | class Activity2_1PulseView : AppCompatActivity() {
8 |
9 | override fun onCreate(savedInstanceState: Bundle?) {
10 | super.onCreate(savedInstanceState)
11 | setContentView(R.layout.activity2_1pulseview)
12 | title = getString(R.string.activity2_1)
13 | }
14 | }
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/anim/anim_blink.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/anim/anim_bounce.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
12 |
13 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/anim/anim_fade_in.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/anim/anim_fade_out.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
9 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/anim/anim_move.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
11 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/anim/anim_rotate.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
12 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/anim/anim_slide_down.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
12 |
13 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/anim/anim_slide_up.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
12 |
13 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/anim/anim_zoom_in.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
13 |
14 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/anim/anim_zoom_out.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/anim/path_interpolator.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/animator/animator_rotation.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/animator/animator_sample.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/animator/animator_scale.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
11 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/animator/animator_translate_x.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/animator/animator_translate_y.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/drawable/anim_list_gradient.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
9 |
12 |
13 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/drawable/gradient_green_yellow.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/drawable/gradient_red_blue.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/drawable/ic_baseline_favorite_24.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/drawable/ic_baseline_sports_baseball_24.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
13 |
16 |
17 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/drawable/ic_baseline_sports_soccer_24.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/drawable/ic_star.xml:
--------------------------------------------------------------------------------
1 |
16 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/drawable/landscape.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial1-1Basics/src/main/res/drawable/landscape.jpg
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/drawable/mountains.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial1-1Basics/src/main/res/drawable/mountains.jpg
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/layout/activity2_1pulseview.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/layout/activity2_2reveal_hide_crossfade.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
10 |
11 |
17 |
18 |
19 |
20 |
25 |
26 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
8 |
9 |
10 |
14 |
15 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/layout/mock_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial1-1Basics/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial1-1Basics/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial1-1Basics/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial1-1Basics/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial1-1Basics/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial1-1Basics/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial1-1Basics/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial1-1Basics/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial1-1Basics/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial1-1Basics/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/values-night/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
16 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #FFBB86FC
4 | #FF6200EE
5 | #FF3700B3
6 | #FF03DAC5
7 | #FF018786
8 | #FF000000
9 | #FFFFFFFF
10 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 8dp
4 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/main/res/values/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
16 |
--------------------------------------------------------------------------------
/Tutorial1-1Basics/src/test/java/com/example/tutorial1_1basics/ExampleUnitTest.kt:
--------------------------------------------------------------------------------
1 | package com.example.tutorial1_1basics
2 |
3 | import org.junit.Test
4 |
5 | import org.junit.Assert.*
6 |
7 | /**
8 | * Example local unit test, which will execute on the development machine (host).
9 | *
10 | * See [testing documentation](http://d.android.com/tools/testing).
11 | */
12 | class ExampleUnitTest {
13 | @Test
14 | fun addition_isCorrect() {
15 | assertEquals(4, 2 + 2)
16 | }
17 | }
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/.gitignore:
--------------------------------------------------------------------------------
1 | /build
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # You can control the set of applied configuration files using the
3 | # proguardFiles setting in build.gradle.
4 | #
5 | # For more details, see
6 | # http://developer.android.com/guide/developing/tools/proguard.html
7 |
8 | # If your project uses WebView with JS, uncomment the following
9 | # and specify the fully qualified class name to the JavaScript interface
10 | # class:
11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12 | # public *;
13 | #}
14 |
15 | # Uncomment this to preserve the line number information for
16 | # debugging stack traces.
17 | #-keepattributes SourceFile,LineNumberTable
18 |
19 | # If you keep the line number information, uncomment this to
20 | # hide the original source file name.
21 | #-renamesourcefileattribute SourceFile
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/androidTest/java/com/smarttoolfactory/tutorial2_1animatedvectordrawables/ExampleInstrumentedTest.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial2_1animatedvectordrawables
2 |
3 | import androidx.test.platform.app.InstrumentationRegistry
4 | import androidx.test.ext.junit.runners.AndroidJUnit4
5 |
6 | import org.junit.Test
7 | import org.junit.runner.RunWith
8 |
9 | import org.junit.Assert.*
10 |
11 | /**
12 | * Instrumented test, which will execute on an Android device.
13 | *
14 | * See [testing documentation](http://d.android.com/tools/testing).
15 | */
16 | @RunWith(AndroidJUnit4::class)
17 | class ExampleInstrumentedTest {
18 | @Test
19 | fun useAppContext() {
20 | // Context of the app under test.
21 | val appContext = InstrumentationRegistry.getInstrumentation().targetContext
22 | assertEquals(
23 | "com.smarttoolfactory.tutorial2_1animatedvectordrawables",
24 | appContext.packageName
25 | )
26 | }
27 | }
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/java/com/smarttoolfactory/tutorial2_1animatedvectordrawables/Activity1_3BottomNavIcons.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial2_1animatedvectordrawables
2 |
3 | import android.os.Bundle
4 | import androidx.appcompat.app.AppCompatActivity
5 |
6 | class Activity1_3BottomNavIcons : AppCompatActivity() {
7 |
8 | override fun onCreate(savedInstanceState: Bundle?) {
9 | super.onCreate(savedInstanceState)
10 | setContentView(R.layout.activity1_3bnv_icons)
11 | title = getString(R.string.activity1_3)
12 | }
13 | }
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/java/com/smarttoolfactory/tutorial2_1animatedvectordrawables/adapter/model/ActivityClassModel.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial2_1animatedvectordrawables.adapter.model
2 |
3 | data class ActivityClassModel(val clazz: Class<*>, val description: String = clazz.name)
4 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/java/com/smarttoolfactory/tutorial2_1animatedvectordrawables/adapter/viewholder/ItemDiffCallback.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial2_1animatedvectordrawables.adapter.viewholder
2 |
3 | import androidx.recyclerview.widget.DiffUtil
4 |
5 | class ItemDiffCallback(
6 | private val viewBinders: Map
7 | ) : DiffUtil.ItemCallback() {
8 |
9 | override fun areItemsTheSame(oldItem: Any, newItem: Any): Boolean {
10 | if (oldItem::class != newItem::class) {
11 | return false
12 | }
13 | return viewBinders[oldItem::class.java]?.areItemsTheSame(oldItem, newItem) ?: false
14 | }
15 |
16 | override fun areContentsTheSame(oldItem: Any, newItem: Any): Boolean {
17 | // We know the items are the same class because [areItemsTheSame] returned true
18 | return viewBinders[oldItem::class.java]?.areContentsTheSame(oldItem, newItem) ?: false
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/java/com/smarttoolfactory/tutorial2_1animatedvectordrawables/model/AVDModel.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial2_1animatedvectordrawables.model
2 |
3 | import androidx.annotation.DrawableRes
4 |
5 | data class AVDModel(@DrawableRes val drawableRes: Int)
6 | data class SeekableVDModel(@DrawableRes val drawableRes: Int)
7 | data class ImageButtonModel(@DrawableRes val drawableRes: Int)
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/java/com/smarttoolfactory/tutorial2_1animatedvectordrawables/model/HeaderModel.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial2_1animatedvectordrawables.model
2 |
3 | data class HeaderModel(val header: String)
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/animator/comment_lines_add_rotate.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
25 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/animator/trimclip_heart_draw_stroke.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
10 |
15 |
16 |
17 |
24 |
25 |
32 |
33 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/animator/trimclip_heart_fade_out.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
11 |
12 |
19 |
20 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/animator/trimclip_searchback_hide_arrow_head.xml:
--------------------------------------------------------------------------------
1 |
8 |
9 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/animator/trimclip_searchback_show_arrow_head.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
10 |
11 |
18 |
19 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/animator/upload_arrow_fill.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/animator/upvote.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
25 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_bnv_account.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
13 |
14 |
18 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_bnv_dashboard.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_bnv_home.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_bnv_notification.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
13 |
14 |
18 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_checkable_checkbox.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_checkable_expandcollapse.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_checkable_radiobutton.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_heart_break.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_heart_unfill.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_pathmorph_arrowoverflow.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_pathmorph_crosstick.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_pathmorph_drawer.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_pathmorph_plusminus.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_trimclip_airplane.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_trimclip_flashlight.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_trimclip_heart.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/asl_trimclip_searchback.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/avd_pathmorph_drawer_hamburger_to_arrow.xml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
14 |
15 |
16 |
17 |
18 |
19 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/avd_trimclip_heart_fill.xml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/ic_baseline_explore_24.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/ic_baseline_notifications_active_24.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_account_active.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_account_outlined.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_activity1_1heart.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_checkable_expandcollapse_collapsed.xml:
--------------------------------------------------------------------------------
1 |
8 |
9 |
13 |
16 |
17 |
20 |
21 |
22 |
25 |
26 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_checkable_expandcollapse_expanded.xml:
--------------------------------------------------------------------------------
1 |
8 |
9 |
13 |
16 |
17 |
20 |
21 |
22 |
25 |
26 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_checkable_radiobutton_checked.xml:
--------------------------------------------------------------------------------
1 |
8 |
11 |
12 |
17 |
18 |
19 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_checkable_radiobutton_unchecked.xml:
--------------------------------------------------------------------------------
1 |
8 |
11 |
12 |
17 |
18 |
22 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_dashboard_active.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_dashboard_outlined.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_heart_empty.xml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
13 |
14 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_heart_filled.xml:
--------------------------------------------------------------------------------
1 |
7 |
13 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_home_active.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_home_outlined.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_notification_active.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_notification_outlined.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_pathmorph_crosstick_cross.xml:
--------------------------------------------------------------------------------
1 |
8 |
9 |
13 |
14 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_pathmorph_crosstick_tick.xml:
--------------------------------------------------------------------------------
1 |
8 |
9 |
13 |
14 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_pathmorph_drawer_arrow.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
15 |
16 |
20 |
21 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_pathmorph_drawer_hamburger.xml:
--------------------------------------------------------------------------------
1 |
8 |
9 |
13 |
14 |
18 |
19 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_pathmorph_plusminus_minus.xml:
--------------------------------------------------------------------------------
1 |
8 |
12 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_pathmorph_plusminus_plus.xml:
--------------------------------------------------------------------------------
1 |
8 |
12 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_profile.xml:
--------------------------------------------------------------------------------
1 |
7 |
11 |
15 |
16 |
21 |
25 |
26 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_trimclip_airplane_disabled.xml:
--------------------------------------------------------------------------------
1 |
10 |
11 |
14 |
15 |
18 |
19 |
24 |
25 |
28 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_trimclip_airplane_enabled.xml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
13 |
14 |
17 |
18 |
24 |
25 |
28 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_trimclip_flashlight_disabled.xml:
--------------------------------------------------------------------------------
1 |
10 |
11 |
14 |
15 |
18 |
19 |
24 |
25 |
28 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_trimclip_flashlight_enabled.xml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
13 |
14 |
17 |
18 |
24 |
25 |
28 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_trimclip_heart_empty.xml:
--------------------------------------------------------------------------------
1 |
8 |
9 |
13 |
14 |
18 |
19 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/drawable/vd_trimclip_heart_full.xml:
--------------------------------------------------------------------------------
1 |
8 |
9 |
13 |
14 |
18 |
19 |
20 |
23 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/interpolator/checkable_checkbox_tochecked_0.xml:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/interpolator/checkable_checkbox_tochecked_1.xml:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/interpolator/checkable_checkbox_tounchecked_0.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/interpolator/checkable_checkbox_tounchecked_1.xml:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/interpolator/checkable_radiobutton.xml:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/interpolator/clock_clock_0.xml:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/interpolator/clock_clock_1.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/interpolator/pathmorph_expandcollapse.xml:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/interpolator/slow_out_fast_in.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
24 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/interpolator/trim_end_interpolator.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
21 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/interpolator/trim_start_interpolator.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
21 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/layout/activity1_3bnv_icons.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
16 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
8 |
9 |
10 |
14 |
15 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/menu/menu_bottom_navigation.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial2-1AnimatedVectorDrawables/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/values-night/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
16 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/values/checkable_expandcollapse.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | M 1,-4 L 1,4 L -1,4 L -1,-4 Z
4 |
5 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/values/checkable_radiobutton.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | M 0,0 m -9,0 a 9,9 0 1,0 18,0 a 9,9 0 1,0 -18,0
4 | M 0,0 m -5,0 a 5,5 0 1,0 10,0 a 5,5 0 1,0 -10,0
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #FFBB86FC
4 | #FF6200EE
5 | #FF3700B3
6 | #FF03DAC5
7 | #FF018786
8 | #FF000000
9 | #FFFFFFFF
10 |
11 | #ff333333
12 | #ff757575
13 | #fafafa
14 | @color/background_light
15 | #ffffff
16 | #e0e0e0
17 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/values/integers.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 | 360
20 | 120
21 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/values/pathmorph_arrowoverflow.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | M -5.5,-1 l 11,0 c 0,0 0,0 0,0 l 0,2 c 0,0 0,0 0,0 l -11,0 c 0,0 0,0 0,0 l 0,-2 c 0,0 0,0 0,0 Z
4 | M -7,-1 l 14,0 c 0,0 0,0 0,0 l 0,2 c 0,0 0,0 0,0 l -14,0 c 0,0 0,0 0,0 l 0,-2 c 0,0 0,0 0,0 Z
5 | M 0,-2 l 0,0 c 1.1045694996,0 2,0.8954305004 2,2 l 0,0 c 0,1.1045694996 -0.8954305004,2 -2,2 l 0,0 c -1.1045694996,0 -2,-0.8954305004 -2,-2 l 0,0 c 0,-1.1045694996 0.8954305004,-2 2,-2 Z
6 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/values/pathmorph_crosstick.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | M4.8,13.4 L9,17.6 M10.4,16.2 L19.6,7
4 | M6.4,6.4 L17.6,17.6 M6.4,17.6 L17.6,6.4
5 | 2
6 | 300
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/values/pathmorph_drawer.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | M 3,6 L 3,8 L 21,8 L 21,6 L 3,6 z M 3,11 L 3,13 L 21,13 L 21, 12 L 21,11 L 3,11 z M 3,18 L 3,16 L 21,16 L 21,18 L 3,18 z
4 | M 12, 4 L 10.59,5.41 L 16.17,11 L 18.99,11 L 12,4 z M 4, 11 L 4, 13 L 18.99, 13 L 20, 12 L 18.99, 11 L 4, 11 z M 12,20 L 10.59, 18.59 L 16.17, 13 L 18.99, 13 L 12, 20z
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/values/pathmorph_plusminus.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | M 5,11 L 11,11 L 11,5 L 13,5 L 13,11 L 19,11 L 19,13 L 13,13 L 13,19 L 11,19 L 11,13 L 5,13 Z
4 | M 5,11 L 11,11 L 11,11 L 13,11 L 13,11 L 19,11 L 19,13 L 13,13 L 13,13 L 11,13 L 11,13 L 5,13 Z
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/values/paths.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 | M20,36h8v-4h-8V36z M6,12v4h36v-4H6z M12,26h24v-4H12V26z
20 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | Tutorial2-1AnimatedVectorDrawables
3 | Ch1-1 AnimatedVectorDrawables
4 | Ch1-2 State Change
5 | Ch1-3 BottomNavigationView Icons
6 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/main/res/values/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
16 |
--------------------------------------------------------------------------------
/Tutorial2-1AnimatedVectorDrawables/src/test/java/com/smarttoolfactory/tutorial2_1animatedvectordrawables/ExampleUnitTest.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial2_1animatedvectordrawables
2 |
3 | import org.junit.Test
4 |
5 | import org.junit.Assert.*
6 |
7 | /**
8 | * Example local unit test, which will execute on the development machine (host).
9 | *
10 | * See [testing documentation](http://d.android.com/tools/testing).
11 | */
12 | class ExampleUnitTest {
13 | @Test
14 | fun addition_isCorrect() {
15 | assertEquals(4, 2 + 2)
16 | }
17 | }
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/.gitignore:
--------------------------------------------------------------------------------
1 | /build
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # You can control the set of applied configuration files using the
3 | # proguardFiles setting in build.gradle.
4 | #
5 | # For more details, see
6 | # http://developer.android.com/guide/developing/tools/proguard.html
7 |
8 | # If your project uses WebView with JS, uncomment the following
9 | # and specify the fully qualified class name to the JavaScript interface
10 | # class:
11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12 | # public *;
13 | #}
14 |
15 | # Uncomment this to preserve the line number information for
16 | # debugging stack traces.
17 | #-keepattributes SourceFile,LineNumberTable
18 |
19 | # If you keep the line number information, uncomment this to
20 | # hide the original source file name.
21 | #-renamesourcefileattribute SourceFile
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/androidTest/java/com/smarttoolfactory/tutorial3_1transitions/ExampleInstrumentedTest.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions
2 |
3 | import androidx.test.platform.app.InstrumentationRegistry
4 | import androidx.test.ext.junit.runners.AndroidJUnit4
5 |
6 | import org.junit.Test
7 | import org.junit.runner.RunWith
8 |
9 | import org.junit.Assert.*
10 |
11 | /**
12 | * Instrumented test, which will execute on an Android device.
13 | *
14 | * See [testing documentation](http://d.android.com/tools/testing).
15 | */
16 | @RunWith(AndroidJUnit4::class)
17 | class ExampleInstrumentedTest {
18 | @Test
19 | fun useAppContext() {
20 | // Context of the app under test.
21 | val appContext = InstrumentationRegistry.getInstrumentation().targetContext
22 | assertEquals("com.smarttoolfactory.tutorial3_1transitions", appContext.packageName)
23 | }
24 | }
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/TransitionAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions
2 |
3 | import android.transition.Transition
4 |
5 | open class TransitionAdapter : Transition.TransitionListener {
6 |
7 | override fun onTransitionStart(transition: Transition?) {
8 |
9 | }
10 |
11 | override fun onTransitionEnd(transition: Transition?) {
12 |
13 | }
14 |
15 | override fun onTransitionCancel(transition: Transition?) {
16 |
17 | }
18 |
19 | override fun onTransitionPause(transition: Transition?) {
20 | }
21 |
22 | override fun onTransitionResume(transition: Transition?) {
23 | }
24 |
25 |
26 | }
27 |
28 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/adapter/animator/PostItemAnimator.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.adapter.animator
2 |
3 | import androidx.recyclerview.widget.DefaultItemAnimator
4 | import androidx.recyclerview.widget.RecyclerView
5 |
6 | // TODO Add RecyclerView item addition and removal animations
7 | class PostItemAnimator : DefaultItemAnimator() {
8 |
9 | override fun animateAdd(holder: RecyclerView.ViewHolder?): Boolean {
10 | return super.animateAdd(holder)
11 | }
12 |
13 | override fun animateRemove(holder: RecyclerView.ViewHolder?): Boolean {
14 | return super.animateRemove(holder)
15 | }
16 |
17 | }
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/adapter/itemdecoration/GridMarginDecoration.kt:
--------------------------------------------------------------------------------
1 |
2 | package com.smarttoolfactory.tutorial3_1transitions.adapter.itemdecoration
3 |
4 | import android.graphics.Rect
5 | import android.view.View
6 | import androidx.recyclerview.widget.RecyclerView
7 |
8 | class GridMarginDecoration(private val space: Int) : RecyclerView.ItemDecoration() {
9 | override fun getItemOffsets(
10 | outRect: Rect, view: View,
11 | parent: RecyclerView, state: RecyclerView.State
12 | ) {
13 | outRect.left = space
14 | outRect.top = space
15 | outRect.right = space
16 | outRect.bottom = space
17 | }
18 | }
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/adapter/itemdecoration/GridSpacingItemDecoration.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.adapter.itemdecoration
2 |
3 | import android.graphics.Rect
4 | import android.view.View
5 | import androidx.recyclerview.widget.RecyclerView
6 |
7 | class GridSpacingItemDecoration(
8 | private val spanCount: Int,
9 | private val spacing: Int,
10 | ) : RecyclerView.ItemDecoration() {
11 |
12 | override fun getItemOffsets(
13 | outRect: Rect,
14 | view: View,
15 | parent: RecyclerView,
16 | state: RecyclerView.State
17 | ) {
18 | val position = parent.getChildAdapterPosition(view)
19 |
20 | val column = (position) % spanCount
21 |
22 | if (column == 0) {
23 | outRect.left = spacing
24 | } else {
25 | outRect.left = 0
26 | }
27 | outRect.right = spacing
28 | outRect.bottom = 0
29 | outRect.top = spacing
30 |
31 | }
32 |
33 | }
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/adapter/model/ActivityClassModel.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.adapter.model
2 |
3 | data class ActivityClassModel(val clazz: Class<*>, val description: String = clazz.name)
4 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/adapter/model/HeaderModel.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.adapter.model
2 |
3 | data class HeaderModel(val header: String)
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/adapter/model/ImageModel.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.adapter.model
2 |
3 | import androidx.annotation.DrawableRes
4 |
5 | data class ImageModel(@DrawableRes val drawableRes: Int)
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/adapter/model/MagazineListModel.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.adapter.model
2 |
3 | import android.os.Parcelable
4 | import kotlinx.android.parcel.Parcelize
5 |
6 | @Parcelize
7 | data class MagazineListModel(val magazineList: List) : Parcelable
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/adapter/model/MagazineModel.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.adapter.model
2 |
3 | import android.os.Parcelable
4 | import androidx.annotation.DrawableRes
5 | import kotlinx.android.parcel.Parcelize
6 |
7 | @Parcelize
8 | data class MagazineModel(
9 | @DrawableRes val drawableRes: Int,
10 | val title: String,
11 | val body: String,
12 | val transitionId:Int,
13 | val transitionName: String = ""
14 | ) : Parcelable {
15 |
16 | }
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/adapter/model/Post.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.adapter.model
2 |
3 | import android.os.Parcelable
4 | import kotlinx.android.parcel.Parcelize
5 |
6 | @Parcelize
7 | data class Post(
8 | val id: Int,
9 | val userId: Int,
10 | val title: String,
11 | val body: String
12 | ) : Parcelable
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/adapter/model/PostCardModel.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.adapter.model
2 |
3 | import android.os.Parcelable
4 | import androidx.annotation.DrawableRes
5 | import kotlinx.android.parcel.Parcelize
6 |
7 | @Parcelize
8 | data class PostCardModel(val post: Post, @DrawableRes val drawableRes: Int) : Parcelable
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/adapter/model/TravelModel.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.adapter.model
2 |
3 | import android.os.Parcelable
4 | import androidx.annotation.DrawableRes
5 | import kotlinx.android.parcel.Parcelize
6 |
7 | @Parcelize
8 | data class TravelModel(
9 | val id: Int,
10 | @DrawableRes
11 | val drawableRes: Int,
12 | val title: String,
13 | val date: String,
14 | val images: List?,
15 | val body: String,
16 | ) : Parcelable
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/chapter2_fragment_transitions/Activity2_1FragmentTransitionsBasics.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.chapter2_fragment_transitions
2 |
3 | import android.os.Bundle
4 | import androidx.appcompat.app.AppCompatActivity
5 | import com.smarttoolfactory.tutorial3_1transitions.R
6 |
7 | class Activity2_1FragmentTransitionsBasics : AppCompatActivity() {
8 |
9 | override fun onCreate(savedInstanceState: Bundle?) {
10 |
11 | super.onCreate(savedInstanceState)
12 | setContentView(R.layout.activity2_1fragment_transitions_bacis)
13 | title = getString(R.string.activity2_1)
14 |
15 | val fragment = Fragment2_1Basics()
16 |
17 | supportFragmentManager.beginTransaction()
18 | .add(R.id.fragmentContainerView, fragment)
19 | .commit()
20 | }
21 | }
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/chapter2_fragment_transitions/Activity2_3FragmentTransitions.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.chapter2_fragment_transitions
2 |
3 | import android.os.Bundle
4 | import androidx.appcompat.app.AppCompatActivity
5 | import com.smarttoolfactory.tutorial3_1transitions.R
6 |
7 | class Activity2_3FragmentTransitions : AppCompatActivity() {
8 |
9 | override fun onCreate(savedInstanceState: Bundle?) {
10 |
11 | super.onCreate(savedInstanceState)
12 | setContentView(R.layout.activity2_3fragment_transitions)
13 | title = getString(R.string.activity2_1)
14 |
15 | val fragment = Fragment2_3ImageList()
16 |
17 | supportFragmentManager.beginTransaction()
18 | .add(R.id.fragmentContainerView, fragment)
19 | .commit()
20 | }
21 | }
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/chapter2_fragment_transitions/Activity2_4FragmentTransitionsWithNavComponents.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.chapter2_fragment_transitions
2 |
3 | import android.os.Bundle
4 | import androidx.appcompat.app.AppCompatActivity
5 | import com.smarttoolfactory.tutorial3_1transitions.R
6 |
7 |
8 | class Activity2_4FragmentTransitionsWithNavComponents : AppCompatActivity() {
9 |
10 | override fun onCreate(savedInstanceState: Bundle?) {
11 |
12 | super.onCreate(savedInstanceState)
13 | setContentView(R.layout.activity2_4nav_shared_transition)
14 | title = getString(R.string.activity2_4)
15 |
16 | }
17 | }
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/chapter2_fragment_transitions/Activity2_5FragmentTransitionsWithToolbar.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.chapter2_fragment_transitions
2 |
3 | import android.os.Bundle
4 | import androidx.appcompat.app.AppCompatActivity
5 | import com.smarttoolfactory.tutorial3_1transitions.R
6 |
7 |
8 | class Activity2_5FragmentTransitionsWithToolbar : AppCompatActivity() {
9 |
10 | override fun onCreate(savedInstanceState: Bundle?) {
11 |
12 | super.onCreate(savedInstanceState)
13 | setContentView(R.layout.activity2_5toolbar_transition_propagation)
14 | title = getString(R.string.activity2_5)
15 |
16 | }
17 | }
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/chapter2_fragment_transitions/TransitionLifeCycleViewModel.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.chapter2_fragment_transitions
2 |
3 | import androidx.lifecycle.LiveData
4 | import androidx.lifecycle.MutableLiveData
5 | import androidx.lifecycle.ViewModel
6 |
7 | class TransitionLifeCycleViewModel : ViewModel() {
8 |
9 | private val _lifecycleText = MutableLiveData()
10 | val lifeCycleText: LiveData
11 | get() = _lifecycleText
12 |
13 | fun clearText() {
14 | _lifecycleText.value = ""
15 | }
16 |
17 | fun appendText(text: String) {
18 | _lifecycleText.value += text
19 | }
20 |
21 | }
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/constant/Constants.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.constant
2 |
3 | const val KEY_AVATAR = "key-avatar"
4 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/java/com/smarttoolfactory/tutorial3_1transitions/transition/TransitionXAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions.transition
2 |
3 | import androidx.transition.Transition
4 |
5 | abstract class TransitionXAdapter : Transition.TransitionListener {
6 |
7 | var animationDuration = 0L
8 |
9 | override fun onTransitionStart(transition: Transition) {
10 | animationDuration = System.currentTimeMillis()
11 | }
12 |
13 | override fun onTransitionEnd(transition: Transition) {
14 | animationDuration = System.currentTimeMillis() - animationDuration
15 | }
16 |
17 | override fun onTransitionCancel(transition: Transition) = Unit
18 |
19 | override fun onTransitionPause(transition: Transition) = Unit
20 |
21 | override fun onTransitionResume(transition: Transition) = Unit
22 | }
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/color/bottom_nav_color.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape1.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape10.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape2.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape3.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape4.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape5.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape6.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape7.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape8.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/landscape9.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag1.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag2.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag3.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag4.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag5.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag6.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable-nodpi/mag7.jpg
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/asl_bnv_account.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
13 |
14 |
18 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/asl_bnv_dashboard.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/asl_bnv_home.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/asl_bnv_notification.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
13 |
14 |
18 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/asl_heart_break.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
12 |
13 |
17 |
18 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/avatar_1_raster.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable/avatar_1_raster.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/avatar_2_raster.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable/avatar_2_raster.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/avatar_3_raster.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable/avatar_3_raster.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/avatar_4_raster.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable/avatar_4_raster.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/avatar_5_raster.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable/avatar_5_raster.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/avatar_6_raster.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/drawable/avatar_6_raster.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_arrow_back.xml:
--------------------------------------------------------------------------------
1 |
14 |
20 |
23 |
24 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_baseline_account_circle_24.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_baseline_add_24.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_baseline_expand_less_24.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_baseline_expand_more_24.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_baseline_home_24.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_baseline_more_vert_24.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_baseline_remove_24.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_baseline_search_24.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_bookmark.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
12 |
13 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_delete.xml:
--------------------------------------------------------------------------------
1 |
14 |
20 |
23 |
24 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_favorite.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
12 |
13 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_reply_all.xml:
--------------------------------------------------------------------------------
1 |
14 |
20 |
23 |
24 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/ic_share.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
12 |
13 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/vd_account_active.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/vd_account_outlined.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/vd_dashboard_active.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/vd_dashboard_outlined.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/vd_heart_empty.xml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
13 |
14 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/vd_heart_filled.xml:
--------------------------------------------------------------------------------
1 |
7 |
13 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/vd_home_active.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/vd_home_outlined.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/vd_notification_active.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/drawable/vd_notification_outlined.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/activity1_2recyclerview_transition.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
14 |
15 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/activity1_3details.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/activity1_3recyclerview_to_viewpager2_transition.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
10 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/activity1_5recyclerview_transition2.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
19 |
20 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/activity2_1fragment_transitions_bacis.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
15 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/activity2_2fragment_transition_lifecycles.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/activity2_3fragment_transitions.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
15 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/activity2_4nav_shared_transition.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/activity2_5toolbar_transition_propagation.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
9 |
10 |
11 |
16 |
17 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/fragment2_6expand_collapse_list.xml:
--------------------------------------------------------------------------------
1 |
2 |
19 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/item_image.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/item_image_destination.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
13 |
14 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/layout/item_image_detail_grid.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
13 |
14 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/menu/main.xml:
--------------------------------------------------------------------------------
1 |
19 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/menu/menu_add_remove.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/menu/menu_bottom_navigation.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/menu/play_store.xml:
--------------------------------------------------------------------------------
1 |
16 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/Tutorial3-1Transitions/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/transition/activity2_detail_transition.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/transition/activity3_detail_transition.xml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/transition/activity5_detail_transition.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/transition/arc.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
11 |
12 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/transition/grid_exit.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/transition/grid_reenter.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/transition/icon_expand_toggle.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/transition/move.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/transition/shared_main_detail.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/transition/slide.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/values-v29/color.xml:
--------------------------------------------------------------------------------
1 |
2 |
12 |
13 |
14 |
15 | @android:color/transparent
16 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/values/attrs_alpha_transition.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/values/attrs_background_color_change.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/values/attrs_circular_reveal.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/values/attrs_rotation_transition.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/values/attrs_scale_transition.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/values/attrs_text_color_change.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/values/motion.xml:
--------------------------------------------------------------------------------
1 |
2 |
15 |
16 |
17 |
18 |
19 | 300
20 | 225
21 | 175
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/main/res/values/transition_names.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | transition_iv_avatar
4 | transition_image_view
5 | transition_card_view
6 | transition_tv_title
7 | transition_tv_body
8 | transition_tv_date
9 |
--------------------------------------------------------------------------------
/Tutorial3-1Transitions/src/test/java/com/smarttoolfactory/tutorial3_1transitions/ExampleUnitTest.kt:
--------------------------------------------------------------------------------
1 | package com.smarttoolfactory.tutorial3_1transitions
2 |
3 | import org.junit.Test
4 |
5 | import org.junit.Assert.*
6 |
7 | /**
8 | * Example local unit test, which will execute on the development machine (host).
9 | *
10 | * See [testing documentation](http://d.android.com/tools/testing).
11 | */
12 | class ExampleUnitTest {
13 | @Test
14 | fun addition_isCorrect() {
15 | assertEquals(4, 2 + 2)
16 | }
17 | }
--------------------------------------------------------------------------------
/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 | buildscript {
3 | ext.kotlin_version = "1.4.10"
4 | ext.navigation_version = '2.3.0'
5 | repositories {
6 | google()
7 | jcenter()
8 | }
9 | dependencies {
10 | classpath 'com.android.tools.build:gradle:4.2.0-alpha15'
11 | classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
12 | classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$navigation_version"
13 |
14 | // NOTE: Do not place your application dependencies here; they belong
15 | // in the individual module build.gradle files
16 | }
17 | }
18 |
19 | allprojects {
20 | repositories {
21 | google()
22 | jcenter()
23 | }
24 | }
25 |
26 | task clean(type: Delete) {
27 | delete rootProject.buildDir
28 | }
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Oct 28 11:31:22 TRT 2020
2 | distributionBase=GRADLE_USER_HOME
3 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-bin.zip
4 | distributionPath=wrapper/dists
5 | zipStorePath=wrapper/dists
6 | zipStoreBase=GRADLE_USER_HOME
7 |
--------------------------------------------------------------------------------
/screenshots/avd_chapter1_1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/avd_chapter1_1.gif
--------------------------------------------------------------------------------
/screenshots/avd_chapter1_2.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/avd_chapter1_2.gif
--------------------------------------------------------------------------------
/screenshots/avd_chapter1_3.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/avd_chapter1_3.gif
--------------------------------------------------------------------------------
/screenshots/chapter2_3circular_reveal.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/chapter2_3circular_reveal.gif
--------------------------------------------------------------------------------
/screenshots/chapter2_4flip.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/chapter2_4flip.gif
--------------------------------------------------------------------------------
/screenshots/chapter2_6zoom.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/chapter2_6zoom.gif
--------------------------------------------------------------------------------
/screenshots/chapter2_7gradient.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/chapter2_7gradient.gif
--------------------------------------------------------------------------------
/screenshots/chapter2_8counter_textview.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/chapter2_8counter_textview.gif
--------------------------------------------------------------------------------
/screenshots/chapter2_9_counter_surfaceview.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/chapter2_9_counter_surfaceview.gif
--------------------------------------------------------------------------------
/screenshots/chapter3_1physics_basics.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/chapter3_1physics_basics.gif
--------------------------------------------------------------------------------
/screenshots/chapter3_2scale_and_chain.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/chapter3_2scale_and_chain.gif
--------------------------------------------------------------------------------
/screenshots/chapter3_3fling_animation.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/chapter3_3fling_animation.gif
--------------------------------------------------------------------------------
/screenshots/chapter3_4bnv_tablayout_animation.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/chapter3_4bnv_tablayout_animation.gif
--------------------------------------------------------------------------------
/screenshots/chapter3_5elastic_scale.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/chapter3_5elastic_scale.gif
--------------------------------------------------------------------------------
/screenshots/shape_shifter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/shape_shifter.png
--------------------------------------------------------------------------------
/screenshots/transition_chapter1_2.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/transition_chapter1_2.gif
--------------------------------------------------------------------------------
/screenshots/transition_chapter1_4.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/transition_chapter1_4.gif
--------------------------------------------------------------------------------
/screenshots/transition_chapter2_5_1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/transition_chapter2_5_1.gif
--------------------------------------------------------------------------------
/screenshots/transition_chapter2_5_2.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/transition_chapter2_5_2.gif
--------------------------------------------------------------------------------
/screenshots/transition_chapter2_5_3.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/transition_chapter2_5_3.gif
--------------------------------------------------------------------------------
/screenshots/transition_chapter2_6_1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SmartToolFactory/Animation-Tutorials/d63433b6cd871b7240ac7830063393f25f704e75/screenshots/transition_chapter2_6_1.gif
--------------------------------------------------------------------------------
/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = "Animation Tutorials"
2 | include ':Tutorial1-1Basics'
3 | include ':Tutorial2-1AnimatedVectorDrawables'
4 | include ':Tutorial3-1Transitions'
5 | include ':External-Tutorial-GridToPager'
6 |
--------------------------------------------------------------------------------