Search in sources :

Example 21 with Scene

use of android.transition.Scene in project android_frameworks_base by ResurrectionRemix.

the class SurfaceAndTextureViews method onCreate.

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.surface_texture_views);
    final ViewGroup container = (ViewGroup) findViewById(R.id.container);
    Button toggleButton = (Button) findViewById(R.id.toggleButton);
    mView = new SimpleView(this);
    mView.setId(0);
    mView.setLayoutParams(new LayoutParams(SMALL_SIZE, SMALL_SIZE));
    container.addView(mView);
    mSurfaceView = new SimpleSurfaceView(this);
    mSurfaceView.setId(1);
    mSurfaceView.setLayoutParams(new LayoutParams(SMALL_SIZE, SMALL_SIZE));
    container.addView(mSurfaceView);
    mTextureView = new SimpleTextureView(this);
    mTextureView.setId(2);
    mTextureView.setLayoutParams(new LayoutParams(SMALL_SIZE, SMALL_SIZE));
    container.addView(mTextureView);
    final TransitionSet transition = new TransitionSet();
    transition.addTransition(new ChangeBounds()).addTransition(new Crossfade().addTarget(0).addTarget(1).addTarget(2));
    toggleButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            Scene newScene = new Scene(container);
            newScene.setEnterAction(new Runnable() {

                @Override
                public void run() {
                    if (mView.getWidth() <= SMALL_SIZE) {
                        mView.setLayoutParams(new LayoutParams(SMALL_SIZE * 2, SMALL_SIZE));
                        mSurfaceView.setLayoutParams(new LayoutParams(SMALL_SIZE * 2, SMALL_SIZE));
                        mTextureView.setLayoutParams(new LayoutParams(SMALL_SIZE * 2, SMALL_SIZE));
                        mView.mColor = SimpleView.LARGE_COLOR;
                        mSurfaceView.mColor = SimpleSurfaceView.LARGE_COLOR;
                        mTextureView.mColor = SimpleTextureView.LARGE_COLOR;
                    } else {
                        mView.setLayoutParams(new LayoutParams(SMALL_SIZE, SMALL_SIZE));
                        mSurfaceView.setLayoutParams(new LayoutParams(SMALL_SIZE, SMALL_SIZE));
                        mTextureView.setLayoutParams(new LayoutParams(SMALL_SIZE, SMALL_SIZE));
                        mView.mColor = SimpleView.SMALL_COLOR;
                        mSurfaceView.mColor = SimpleSurfaceView.SMALL_COLOR;
                        mTextureView.mColor = SimpleTextureView.SMALL_COLOR;
                    }
                }
            });
            TransitionManager.go(newScene, transition);
        }
    });
}
Also used : LayoutParams(android.widget.LinearLayout.LayoutParams) ViewGroup(android.view.ViewGroup) ChangeBounds(android.transition.ChangeBounds) Scene(android.transition.Scene) SurfaceView(android.view.SurfaceView) TextureView(android.view.TextureView) View(android.view.View) Button(android.widget.Button) TransitionSet(android.transition.TransitionSet) Crossfade(android.transition.Crossfade)

Example 22 with Scene

use of android.transition.Scene in project android_frameworks_base by ResurrectionRemix.

the class ListViewAddRemove method onCreate.

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.list_view_add_remove);
    final LinearLayout container = (LinearLayout) findViewById(R.id.container);
    final ListView listview = (ListView) findViewById(R.id.listview);
    for (int i = 0; i < 200; ++i) {
        numList.add(Integer.toString(i));
    }
    final StableArrayAdapter adapter = new StableArrayAdapter(this, android.R.layout.simple_list_item_1, numList);
    listview.setAdapter(adapter);
    final ViewTreeObserver observer = container.getViewTreeObserver();
    observer.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {

        public void onGlobalLayout() {
            System.out.println("-------------------------------------");
            System.out.println("onLayoutListener: listview view tops: ");
            for (int i = 0; i < listview.getChildCount(); ++i) {
                TextView view = (TextView) listview.getChildAt(i);
                System.out.println("    " + view.getText() + ": " + view.getTop());
            }
        }
    });
    final Scene mySceneChanger = new Scene(listview);
    mySceneChanger.setEnterAction(new Runnable() {

        @Override
        public void run() {
            numList.remove(mItemToDelete);
            adapter.notifyDataSetChanged();
        }
    });
    final Transition myTransition = new AutoTransition();
    final TransitionSet noFadeIn = new TransitionSet().setOrdering(TransitionSet.ORDERING_SEQUENTIAL);
    Fade fadeIn = new Fade(Fade.IN);
    fadeIn.setDuration(50);
    noFadeIn.addTransition(new Fade(Fade.OUT)).addTransition(new ChangeBounds()).addTransition(fadeIn);
    myTransition.addListener(new Transition.TransitionListenerAdapter() {

        @Override
        public void onTransitionStart(Transition transition) {
            System.out.println("---------ListView Tops: Before--------");
            for (int i = 0; i < listview.getChildCount(); ++i) {
                TextView view = (TextView) listview.getChildAt(i);
                int position = listview.getPositionForView(view);
            }
        }

        @Override
        public void onTransitionEnd(Transition transition) {
            System.out.println("---------ListView Tops: After--------");
            for (int i = 0; i < listview.getChildCount(); ++i) {
                TextView view = (TextView) listview.getChildAt(i);
                int position = listview.getPositionForView(view);
                if (view.hasTransientState()) {
                //                        view.setHasTransientState(false);
                }
            }
            myTransition.removeListener(this);
        }
    });
    listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, final View view, int position, long id) {
            System.out.println("---------ListView Tops: OnClick--------");
            String item = (String) parent.getItemAtPosition(position);
            for (int i = 0; i < listview.getChildCount(); ++i) {
                TextView v = (TextView) listview.getChildAt(i);
                if (!item.equals(v.getText())) {
                //                        v.setHasTransientState(true);
                }
            }
            //                listview.setHasTransientState(true);
            mItemToDelete = item;
            //                numList.remove(item);
            TransitionManager.go(mySceneChanger, noFadeIn);
        //                view.postDelayed(new Runnable() {
        //                    @Override
        //                    public void run() {
        //                        for (int i = 0; i < listview.getChildCount(); ++i) {
        //                            TextView v = (TextView) listview.getChildAt(i);
        //                            v.setHasTransientState(false);
        //                        }
        //                    }
        //                }, 200);
        }
    });
}
Also used : AutoTransition(android.transition.AutoTransition) ChangeBounds(android.transition.ChangeBounds) Scene(android.transition.Scene) TextView(android.widget.TextView) View(android.view.View) AdapterView(android.widget.AdapterView) ListView(android.widget.ListView) ListView(android.widget.ListView) TransitionSet(android.transition.TransitionSet) AutoTransition(android.transition.AutoTransition) Transition(android.transition.Transition) TextView(android.widget.TextView) AdapterView(android.widget.AdapterView) ViewTreeObserver(android.view.ViewTreeObserver) Fade(android.transition.Fade) LinearLayout(android.widget.LinearLayout)

Example 23 with Scene

use of android.transition.Scene in project android_frameworks_base by ResurrectionRemix.

the class ResourceLoadingTest method sendMessage.

public void sendMessage(View view) {
    if (mTransitionManager == null) {
        try {
            TransitionInflater inflater = TransitionInflater.from(this);
            mTransitionManager = inflater.inflateTransitionManager(R.transition.my_transition_mgr, mSceneRoot);
            Scene loadedScene = new Scene(mSceneRoot);
            System.out.println("loadedScene = " + loadedScene);
            Transition loadedTransition = inflater.inflateTransition(R.transition.my_transition);
            System.out.println("loadedTransition = " + loadedTransition);
        } catch (Exception e) {
            System.out.println("Problem loading scene resource: " + e);
        }
    }
    if (mCurrentScene == RESULTS_SCREEN) {
        Scene scene = Scene.getSceneForLayout(mSceneRoot, R.layout.search_screen, this);
        mTransitionManager.transitionTo(scene);
        mCurrentScene = SEARCH_SCREEN;
    } else {
        Scene scene = Scene.getSceneForLayout(mSceneRoot, R.layout.results_screen, this);
        mTransitionManager.transitionTo(scene);
        mCurrentScene = RESULTS_SCREEN;
    }
}
Also used : Transition(android.transition.Transition) TransitionInflater(android.transition.TransitionInflater) Scene(android.transition.Scene)

Example 24 with Scene

use of android.transition.Scene in project android_frameworks_base by crdroidandroid.

the class PhoneWindow method setContentView.

@Override
public void setContentView(int layoutResID) {
    // before this happens.
    if (mContentParent == null) {
        installDecor();
    } else if (!hasFeature(FEATURE_CONTENT_TRANSITIONS)) {
        mContentParent.removeAllViews();
    }
    if (hasFeature(FEATURE_CONTENT_TRANSITIONS)) {
        final Scene newScene = Scene.getSceneForLayout(mContentParent, layoutResID, getContext());
        transitionTo(newScene);
    } else {
        mLayoutInflater.inflate(layoutResID, mContentParent);
    }
    mContentParent.requestApplyInsets();
    final Callback cb = getCallback();
    if (cb != null && !isDestroyed()) {
        cb.onContentChanged();
    }
    mContentParentExplicitlySet = true;
}
Also used : Scene(android.transition.Scene)

Example 25 with Scene

use of android.transition.Scene in project android_frameworks_base by crdroidandroid.

the class Demo1 method onCreate.

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.search_screen);
    View container = (View) findViewById(R.id.container);
    mSceneRoot = (ViewGroup) container.getParent();
    //        mResultsScreen = new MyScene(mSceneRoot, R.layout.results_screen);
    //        mSearchScreen = new MyScene(mSceneRoot, R.layout.search_screen);
    mResultsScreen = new Scene(mSceneRoot);
    mResultsScreen.setEnterAction(new Runnable() {

        @Override
        public void run() {
            LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            inflater.inflate(R.layout.results_screen, mSceneRoot);
        }
    });
    mSearchScreen = new Scene(mSceneRoot);
    mSearchScreen.setEnterAction(new Runnable() {

        @Override
        public void run() {
            LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            inflater.inflate(R.layout.search_screen, mSceneRoot);
        }
    });
}
Also used : LayoutInflater(android.view.LayoutInflater) Scene(android.transition.Scene) View(android.view.View)

Aggregations

Scene (android.transition.Scene)26 View (android.view.View)12 ChangeBounds (android.transition.ChangeBounds)8 Transition (android.transition.Transition)8 TransitionSet (android.transition.TransitionSet)8 AutoTransition (android.transition.AutoTransition)4 Crossfade (android.transition.Crossfade)4 Fade (android.transition.Fade)4 TransitionInflater (android.transition.TransitionInflater)4 LayoutInflater (android.view.LayoutInflater)4 SurfaceView (android.view.SurfaceView)4 TextureView (android.view.TextureView)4 ViewGroup (android.view.ViewGroup)4 ViewTreeObserver (android.view.ViewTreeObserver)4 AdapterView (android.widget.AdapterView)4 Button (android.widget.Button)4 LinearLayout (android.widget.LinearLayout)4 LayoutParams (android.widget.LinearLayout.LayoutParams)4 ListView (android.widget.ListView)4 TextView (android.widget.TextView)4