Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public void onItemClick(Item item, String imageUrl, float imagePositionX, float imagePositionY,
- int imageWidth, int imageHeight) {
- this.itemWidth = imageWidth;
- this.itemHeight = imageHeight;
- this.itemFinalWidth = getWidth(); <-- GET SCREEN SIZE
- translationImageSpring().setCurrentValue(0);
- ViewGroup.LayoutParams cameraImageParams = translationImage.getLayoutParams();
- cameraImageParams.width = imageWidth;
- cameraImageParams.height = imageHeight;
- translationImage.setLayoutParams(cameraImageParams);
- itemYValue = (int) (imagePositionY - topBarHeight);
- itemXValue = (int) (imagePositionX);
- ViewCompat.setX(translationImage, imagePositionX);
- ViewCompat.setY(translationImage, itemYValue);
- ViewUtil.bind(translationImage, imageUrl);
- translationImage.setVisibility(View.VISIBLE);
- translationImage.postDelayed(new Runnable() {
- @Override public void run() {
- translationImageSpring().setEndValue(1);
- }
- }, 100);
- }
- private SimpleSpringListener translationImageListener =
- new SimpleSpringListener() {
- @Override public void onSpringUpdate(Spring spring) {
- float sx = (itemFinalWidth / itemWidth); <-- CAN BE HERE THE PROBLEM?
- float ss = (float) SpringUtil.mapValueFromRangeToRange(spring.getCurrentValue(), 0, 1, 1, sx);
- ViewCompat.setPivotY(translationImage, translationImage.getHeight());
- ViewCompat.setPivotX(translationImage, 0);
- ViewCompat.setScaleY(translationImage, ss);
- ViewCompat.setScaleX(translationImage, ss);
- float valueY = (float) SpringUtil.mapValueFromRangeToRange(
- spring.getCurrentValue(), 0, 1, itemYValue, 0);
- float valueX = (float) SpringUtil.mapValueFromRangeToRange(
- spring.getCurrentValue(), 0, 1, itemXValue, 0);
- ViewCompat.setTranslationX(translationImage, valueX);
- ViewCompat.setTranslationY(translationImage, valueY);
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment