Java Code Examples for com.facebook.rebound.SpringSystem#createSpring()
The following examples show how to use
com.facebook.rebound.SpringSystem#createSpring() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: SpringFloatingActionMenu.java From SpringFloatingActionMenu with Apache License 2.0 | 6 votes |
private void applyBloomOpenAnimation() { final SpringSystem springSystem = SpringSystem.create(); for (int i = 0; i < mMenuItemCount; i++) { // create the springs that control movement final Spring springX = springSystem.createSpring(); final Spring springY = springSystem.createSpring(); MenuItemView menuItemView = mMenuItemViews.get(i); springX.addListener(new MapPerformer(menuItemView, View.X, mFAB.getLeft(), menuItemView.getLeft())); springY.addListener(new MapPerformer(menuItemView, View.Y, mFAB.getTop(), menuItemView.getTop())); DestroySelfSpringListener destroySelfSpringListener = new DestroySelfSpringListener(this,mContainerView,true); springX.addListener(destroySelfSpringListener); springY.addListener(destroySelfSpringListener); springX.setEndValue(1); springY.setEndValue(1); } }
Example 2
Source File: SpringFloatingActionMenu.java From SpringFloatingActionMenu with Apache License 2.0 | 6 votes |
private void applyBloomCloseAnimation() { final SpringSystem springSystem = SpringSystem.create(); for (int i = 0; i < mMenuItemCount; i++) { // create the springs that control movement final Spring springX = springSystem.createSpring(); final Spring springY = springSystem.createSpring(); MenuItemView menuItemView = mMenuItemViews.get(i); springX.addListener(new MapPerformer(menuItemView, View.X, menuItemView.getLeft(), mFAB.getLeft())); springY.addListener(new MapPerformer(menuItemView, View.Y, menuItemView.getTop(), mFAB.getTop())); DestroySelfSpringListener destroySelfSpringListener = new DestroySelfSpringListener(this,mContainerView,false); springX.addListener(destroySelfSpringListener); springY.addListener(destroySelfSpringListener); springX.setEndValue(1); springY.setEndValue(1); } }
Example 3
Source File: MenuItemView.java From SpringFloatingActionMenu with Apache License 2.0 | 6 votes |
private void applyPressAnimation() { SpringSystem springSystem = SpringSystem.create(); final Spring spring = springSystem.createSpring(); spring.addListener(new Performer(mBtn, View.SCALE_X)); spring.addListener(new Performer(mBtn, View.SCALE_Y)); mBtn.setOnTouchListener(new ToggleImitator(spring, 1, 1.2){ @Override public void imitate(MotionEvent event) { super.imitate(event); switch (event.getAction()) { case MotionEvent.ACTION_DOWN: break; case MotionEvent.ACTION_UP: callOnClick(); break; default: } } }); spring.setCurrentValue(1); }
Example 4
Source File: SpringHelper.java From FloatingView with Apache License 2.0 | 5 votes |
public void start(){ SpringSystem springSystem = SpringSystem.create(); Spring spring = springSystem.createSpring(); if (mConfig == 0){ spring.setSpringConfig(SpringConfig.fromBouncinessAndSpeed(mConfigValueOne, mConfigValueTwo)); }else if (mConfig == 1){ spring.setSpringConfig(SpringConfig.fromOrigamiTensionAndFriction(mConfigValueOne, mConfigValueTwo)); } start(spring); }
Example 5
Source File: MenuItemView.java From SpringFloatingActionMenu with Apache License 2.0 | 5 votes |
public void showLabel() { SpringSystem springSystem = SpringSystem.create(); final Spring spring = springSystem.createSpring(); spring.addListener(new MapPerformer(mLabel, View.SCALE_X, 0, 1)); spring.addListener(new MapPerformer(mLabel, View.SCALE_Y, 0, 1)); spring.setCurrentValue(0); new Handler().postDelayed(new Runnable() { @Override public void run() { spring.setEndValue(1); } }, 200); }
Example 6
Source File: SpringConfiguratorView.java From KugouLayout with MIT License | 5 votes |
@TargetApi(Build.VERSION_CODES.HONEYCOMB) public SpringConfiguratorView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); SpringSystem springSystem = SpringSystem.create(); springConfigRegistry = SpringConfigRegistry.getInstance(); spinnerAdapter = new SpinnerAdapter(context); Resources resources = getResources(); mRevealPx = dpToPx(40, resources); mStashPx = dpToPx(280, resources); mRevealerSpring = springSystem.createSpring(); SpringListener revealerSpringListener = new RevealerSpringListener(); mRevealerSpring .setCurrentValue(1) .setEndValue(1) .addListener(revealerSpringListener); addView(generateHierarchy(context)); SeekbarListener seekbarListener = new SeekbarListener(); mTensionSeekBar.setMax(MAX_SEEKBAR_VAL); mTensionSeekBar.setOnSeekBarChangeListener(seekbarListener); mFrictionSeekBar.setMax(MAX_SEEKBAR_VAL); mFrictionSeekBar.setOnSeekBarChangeListener(seekbarListener); mSpringSelectorSpinner.setAdapter(spinnerAdapter); mSpringSelectorSpinner.setOnItemSelectedListener(new SpringSelectedListener()); refreshSpringConfigurations(); this.setTranslationY(mStashPx); }
Example 7
Source File: SpringConfiguratorView.java From light-novel-library_Wenku8_Android with GNU General Public License v2.0 | 5 votes |
@TargetApi(Build.VERSION_CODES.HONEYCOMB) public SpringConfiguratorView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); SpringSystem springSystem = SpringSystem.create(); springConfigRegistry = SpringConfigRegistry.getInstance(); spinnerAdapter = new SpinnerAdapter(context); Resources resources = getResources(); mRevealPx = dpToPx(40, resources); mStashPx = dpToPx(280, resources); mRevealerSpring = springSystem.createSpring(); SpringListener revealerSpringListener = new RevealerSpringListener(); mRevealerSpring .setCurrentValue(1) .setEndValue(1) .addListener(revealerSpringListener); addView(generateHierarchy(context)); SeekbarListener seekbarListener = new SeekbarListener(); mTensionSeekBar.setMax(MAX_SEEKBAR_VAL); mTensionSeekBar.setOnSeekBarChangeListener(seekbarListener); mFrictionSeekBar.setMax(MAX_SEEKBAR_VAL); mFrictionSeekBar.setOnSeekBarChangeListener(seekbarListener); mSpringSelectorSpinner.setAdapter(spinnerAdapter); mSpringSelectorSpinner.setOnItemSelectedListener(new SpringSelectedListener()); refreshSpringConfigurations(); this.setTranslationY(mStashPx); }
Example 8
Source File: SpringFloatingActionMenu.java From SpringFloatingActionMenu with Apache License 2.0 | 4 votes |
private void applyFollowAnimation() { /* Animation code */ final SpringSystem springSystem = SpringSystem.create(); // create the springs that control movement final Spring springX = springSystem.createSpring(); final Spring springY = springSystem.createSpring(); // bind circle movement to events new Actor.Builder(springSystem, mFAB) .addMotion(springX, Imitator.TRACK_DELTA, Imitator.FOLLOW_EXACT, MotionProperty.X) .addMotion(springY, Imitator.TRACK_DELTA, Imitator.FOLLOW_EXACT, MotionProperty.Y) .build(); // add springs to connect between the views final Spring[] followsX = new Spring[mMenuItemCount]; final Spring[] followsY = new Spring[mMenuItemCount]; for (int i = 0; i < mFollowCircles.size(); i++) { // create spring to bind views followsX[i] = springSystem.createSpring(); followsY[i] = springSystem.createSpring(); followsX[i].addListener(new Performer(mFollowCircles.get(i), View.TRANSLATION_X)); followsY[i].addListener(new Performer(mFollowCircles.get(i), View.TRANSLATION_Y)); // imitates another character final SpringImitator followX = new SpringImitator(followsX[i]); final SpringImitator followY = new SpringImitator(followsY[i]); // imitate the previous character if (i == 0) { springX.addListener(followX); springY.addListener(followY); } else { followsX[i - 1].addListener(followX); followsY[i - 1].addListener(followY); } } }
Example 9
Source File: FollowFragment.java From Backboard with Apache License 2.0 | 4 votes |
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { mRootView = (ViewGroup) inflater.inflate(R.layout.fragment_follow, container, false); mCircle = mRootView.findViewById(R.id.circle); FrameLayout.LayoutParams leaderParams = (FrameLayout.LayoutParams) mCircle .getLayoutParams(); mFollowers = new View[4]; float diameter = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, DIAMETER, getResources().getDisplayMetrics()); TypedArray circles = getResources().obtainTypedArray(R.array.circles); // create the circle views int colorIndex = 1; for (int i = 0; i < mFollowers.length; i++) { mFollowers[i] = new View(getActivity()); FrameLayout.LayoutParams params = new FrameLayout.LayoutParams((int) diameter, (int) diameter); params.gravity = leaderParams.gravity; mFollowers[i].setLayoutParams(params); mFollowers[i].setBackgroundDrawable(getResources().getDrawable( circles.getResourceId(colorIndex, -1))); colorIndex++; if (colorIndex >= circles.length()) { colorIndex = 0; } mRootView.addView(mFollowers[i]); } circles.recycle(); /* Animation code */ final SpringSystem springSystem = SpringSystem.create(); // create the springs that control movement final Spring springX = springSystem.createSpring(); final Spring springY = springSystem.createSpring(); // bind circle movement to events new Actor.Builder(springSystem, mCircle).addMotion(springX, MotionProperty.X) .addMotion(springY, MotionProperty.Y).build(); // add springs to connect between the views final Spring[] followsX = new Spring[mFollowers.length]; final Spring[] followsY = new Spring[mFollowers.length]; for (int i = 0; i < mFollowers.length; i++) { // create spring to bind views followsX[i] = springSystem.createSpring(); followsY[i] = springSystem.createSpring(); followsX[i].addListener(new Performer(mFollowers[i], View.TRANSLATION_X)); followsY[i].addListener(new Performer(mFollowers[i], View.TRANSLATION_Y)); // imitates another character final SpringImitator followX = new SpringImitator(followsX[i]); final SpringImitator followY = new SpringImitator(followsY[i]); // imitate the previous character if (i == 0) { springX.addListener(followX); springY.addListener(followY); } else { followsX[i - 1].addListener(followX); followsY[i - 1].addListener(followY); } } return mRootView; }
Example 10
Source File: FlowerFragment.java From Backboard with Apache License 2.0 | 4 votes |
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { mRootView = (RelativeLayout) inflater.inflate(R.layout.fragment_flower, container, false); mCircles = new View[6]; mCircle = mRootView.findViewById(R.id.circle); final float diameter = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, DIAMETER, getResources().getDisplayMetrics()); final TypedArray circles = getResources().obtainTypedArray(R.array.circles); // layout params final RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams((int) diameter, (int) diameter); params.addRule(RelativeLayout.CENTER_IN_PARENT); // create the circle views int colorIndex = 0; for (int i = 0; i < mCircles.length; i++) { mCircles[i] = new View(getActivity()); mCircles[i].setLayoutParams(params); mCircles[i].setBackgroundDrawable(getResources().getDrawable( circles.getResourceId(colorIndex, -1))); colorIndex++; if (colorIndex >= circles.length()) { colorIndex = 0; } mRootView.addView(mCircles[i], 0); } circles.recycle(); /* Animations! */ final SpringSystem springSystem = SpringSystem.create(); // create spring final Spring spring = springSystem.createSpring(); // add listeners along arc final double arc = 2 * Math.PI / mCircles.length; for (int i = 0; i < mCircles.length; i++) { View view = mCircles[i]; // map spring to a line segment from the center to the edge of the ring spring.addListener(new MapPerformer(view, View.TRANSLATION_X, 0, 1, 0, (float) (RING_DIAMETER * Math.cos(i * arc)))); spring.addListener(new MapPerformer(view, View.TRANSLATION_Y, 0, 1, 0, (float) (RING_DIAMETER * Math.sin(i * arc)))); spring.setEndValue(CLOSED); } final ToggleImitator imitator = new ToggleImitator(spring, CLOSED, OPEN); // move circle using finger, snap when near another circle, and bloom when touched new Actor.Builder(SpringSystem.create(), mCircle) .addMotion(new SnapImitator(MotionProperty.X), View.TRANSLATION_X) .addMotion(new SnapImitator(MotionProperty.Y), View.TRANSLATION_Y) .onTouchListener(imitator) .build(); return mRootView; }
Example 11
Source File: BloomFragment.java From Backboard with Apache License 2.0 | 4 votes |
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { mRootView = (RelativeLayout) inflater.inflate(R.layout.fragment_bloom, container, false); mCircles = new View[6]; float diameter = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, DIAMETER, getResources().getDisplayMetrics()); final TypedArray circles = getResources().obtainTypedArray(R.array.circles); // layout params RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams((int) diameter, (int) diameter); params.addRule(RelativeLayout.CENTER_IN_PARENT); // create the circle views int colorIndex = 0; for (int i = 0; i < mCircles.length; i++) { mCircles[i] = new View(getActivity()); mCircles[i].setLayoutParams(params); mCircles[i].setBackgroundDrawable(getResources().getDrawable(circles .getResourceId(colorIndex, -1))); colorIndex++; if (colorIndex >= circles.length()) { colorIndex = 0; } mRootView.addView(mCircles[i]); } circles.recycle(); /* Animations! */ final SpringSystem springSystem = SpringSystem.create(); // create spring final Spring spring = springSystem.createSpring(); // add listeners along arc double arc = 2 * Math.PI / mCircles.length; for (int i = 0; i < mCircles.length; i++) { View view = mCircles[i]; // map spring to a line segment from the center to the edge of the ring spring.addListener(new MapPerformer(view, View.TRANSLATION_X, 0, 1, 0, (float) (RING_DIAMETER * Math.cos(i * arc)))); spring.addListener(new MapPerformer(view, View.TRANSLATION_Y, 0, 1, 0, (float) (RING_DIAMETER * Math.sin(i * arc)))); spring.setEndValue(CLOSED); } mRootView.setOnTouchListener(new ToggleImitator(spring, CLOSED, OPEN)); return mRootView; }
Example 12
Source File: ScaleFragment.java From Backboard with Apache License 2.0 | 4 votes |
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { final View rootView = inflater.inflate(R.layout.fragment_scale, container, false); final View rect = rootView.findViewById(R.id.rect); final SpringSystem springSystem = SpringSystem.create(); final Spring spring = springSystem.createSpring(); spring.addListener(new Performer(rect, View.SCALE_X)); spring.addListener(new Performer(rect, View.SCALE_Y)); rootView.setOnTouchListener(new View.OnTouchListener() { @Override @SuppressLint("ClickableViewAccessibility") public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: spring.setVelocity(0); case MotionEvent.ACTION_MOVE: // can't use Imitation here because there is no nice mapping from // an event property to a Spring float scaleX, scaleY; float delta = event.getX() - (rect.getX() + rect.getMeasuredWidth() / 2); scaleX = Math.abs(delta) / (rect.getMeasuredWidth() / 2); delta = event.getY() - (rect.getY() + rect.getMeasuredHeight() / 2); scaleY = Math.abs(delta) / (rect.getMeasuredHeight() / 2); float scale = Math.max(scaleX, scaleY); spring.setEndValue(scale); break; case MotionEvent.ACTION_UP: spring.setEndValue(1f); break; } return true; } }); return rootView; }
Example 13
Source File: Magnet.java From Magnet with MIT License | 4 votes |
protected Spring createXSpring(SpringSystem springSystem, SpringConfig config) { Spring spring = springSystem.createSpring(); spring.setSpringConfig(config); spring.setRestSpeedThreshold(restVelocity); return spring; }
Example 14
Source File: Magnet.java From Magnet with MIT License | 4 votes |
protected Spring createYSpring(SpringSystem springSystem, SpringConfig config) { Spring spring = springSystem.createSpring(); spring.setSpringConfig(config); spring.setRestSpeedThreshold(restVelocity); return spring; }