1d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki/* 2d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * Copyright (C) 2016 The Android Open Source Project 3d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * 4d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * Licensed under the Apache License, Version 2.0 (the "License"); 5d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * you may not use this file except in compliance with the License. 6d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * You may obtain a copy of the License at 7d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * 8d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * http://www.apache.org/licenses/LICENSE-2.0 9d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * 10d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * Unless required by applicable law or agreed to in writing, software 11d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * distributed under the License is distributed on an "AS IS" BASIS, 12d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * See the License for the specific language governing permissions and 14d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * limitations under the License. 15d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki */ 16d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki 17d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Arakipackage com.example.android.support.transition.widget; 18d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki 19d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Arakiimport android.os.Bundle; 20def582a5836579a3fadabfdbe4413cb1652bf098Aurimas Liutikasimport android.view.ViewGroup; 21def582a5836579a3fadabfdbe4413cb1652bf098Aurimas Liutikas 22ac5fe7c617c66850fff75a9fce9979c6e5674b0fAurimas Liutikasimport androidx.transition.Scene; 23ac5fe7c617c66850fff75a9fce9979c6e5674b0fAurimas Liutikasimport androidx.transition.Transition; 24ac5fe7c617c66850fff75a9fce9979c6e5674b0fAurimas Liutikasimport androidx.transition.TransitionManager; 25def582a5836579a3fadabfdbe4413cb1652bf098Aurimas Liutikas 26def582a5836579a3fadabfdbe4413cb1652bf098Aurimas Liutikasimport com.example.android.support.transition.R; 27d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki 28d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki/** 29d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * This demonstrates usage of a custom Transition. See {@link ChangeColor} for the actual 30d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki * implementation of a custom Transition. 31d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki */ 328934dca5ba4e6a365f8c0ab9c434b71c9f495294Yuichi Arakipublic class CustomUsage extends SceneUsageBase { 33d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki 34d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki private Transition mTransition; 35d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki 36d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki @Override 37d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki protected void onCreate(Bundle savedInstanceState) { 38d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki super.onCreate(savedInstanceState); 39d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki mTransition = new ChangeColor(); 40d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki } 41d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki 42d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki @Override 43d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki Scene[] setUpScenes(ViewGroup root) { 44d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki return new Scene[]{ 45d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki Scene.getSceneForLayout(root, R.layout.custom0, this), 46d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki Scene.getSceneForLayout(root, R.layout.custom1, this), 47d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki Scene.getSceneForLayout(root, R.layout.custom2, this), 48d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki }; 49d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki } 50d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki 51d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki @Override 52d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki void go(Scene scene) { 53d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki TransitionManager.go(scene, mTransition); 54d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki } 55d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki 56d5b720e30a9d82b5f81ec8eac2803e213f2f1c41Yuichi Araki} 57