android.support.v7.widget.CardView#setScaleX ( )源码实例Demo

下面列出了android.support.v7.widget.CardView#setScaleX ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: MusicPlayer_XiangDa   文件: ShadowTransformer.java
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
    int realCurrentPosition;
    int nextPosition;
    float realOffset;
    boolean goingLeft = mLastOffset > positionOffset;

    // If we're going backwards, onPageScrolled receives the last position
    // instead of the current one
    if (goingLeft) {
        realCurrentPosition = position + 1;
        nextPosition = position;
        realOffset = 1 - positionOffset;
    } else {
        nextPosition = position + 1;
        realCurrentPosition = position;
        realOffset = positionOffset;
    }


    // Avoid crash on overscroll
    if (nextPosition > mAdapter.getCount() - 1 || realCurrentPosition > mAdapter.getCount() - 1) {
        return;
    }

    CardView currentCard = mAdapter.getCardViewAt(realCurrentPosition);
    // This might be null if a fragment is being used
    // and the views weren't created yet
    if (currentCard != null) {
        currentCard.setScaleX((1 + mScaleRatio * (1 - realOffset)));
        currentCard.setScaleY((1 + mScaleRatio * (1 - realOffset)));
        currentCard.setCardElevation(mAdapter.getMaxElevationFactor() * (1 - realOffset));
    }
    CardView nextCard = mAdapter.getCardViewAt(nextPosition);
    // We might be scrolling fast enough so that the next (or previous) card
    // was already destroyed or a fragment might not have been created yet
    if (nextCard != null) {
        nextCard.setScaleX((1 + mScaleRatio * (realOffset)));
        nextCard.setScaleY((1 + mScaleRatio * (realOffset)));
        nextCard.setCardElevation(mAdapter.getMaxElevationFactor() * (realOffset));
    }


    if (realOffset == 1) {  //适用于:pos从0->3 ,过程中realOffset并不能至于0,所以伸缩会受到影响
        CardView cardView = null;
        if (goingLeft && nextPosition + 2 < mAdapter.getCount()) {
            cardView = mAdapter.getCardViewAt(nextPosition + 2);
        } else if (goingLeft && nextPosition - 2 > 0) {
            cardView = mAdapter.getCardViewAt(nextPosition - 2);
        }
        if (cardView != null) {
            cardView.setCardElevation(0);
            cardView.setScaleX((1));
            cardView.setScaleY((1));
        }
    }

    mLastOffset = positionOffset;
}
 
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
    int realCurrentPosition;
    int nextPosition;
    float baseElevation = mAdapter.getBaseElevation();
    float realOffset;
    boolean goingLeft = mLastOffset > positionOffset;

    // If we're going backwards, onPageScrolled receives the last position
    // instead of the current one
    if (goingLeft) {
        realCurrentPosition = position + 1;
        nextPosition = position;
        realOffset = 1 - positionOffset;
    } else {
        nextPosition = position + 1;
        realCurrentPosition = position;
        realOffset = positionOffset;
    }

    // Avoid crash on overscroll
    if (nextPosition > mAdapter.getCount() - 1
            || realCurrentPosition > mAdapter.getCount() - 1) {
        return;
    }

    CardView currentCard = mAdapter.getCardViewAt(realCurrentPosition);

    // This might be null if a fragment is being used
    // and the views weren't created yet
    if (currentCard != null) {
        if (mScalingEnabled) {
            currentCard.setScaleX((float) (1 + 0.1 * (1 - realOffset)));
            currentCard.setScaleY((float) (1 + 0.1 * (1 - realOffset)));
        }
        currentCard.setCardElevation((baseElevation + baseElevation
                * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (1 - realOffset)));
    }

    CardView nextCard = mAdapter.getCardViewAt(nextPosition);

    // We might be scrolling fast enough so that the next (or previous) card
    // was already destroyed or a fragment might not have been created yet
    if (nextCard != null) {
        if (mScalingEnabled) {
            nextCard.setScaleX((float) (1 + 0.1 * (realOffset)));
            nextCard.setScaleY((float) (1 + 0.1 * (realOffset)));
        }
        nextCard.setCardElevation((baseElevation + baseElevation
                * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (realOffset)));
    }

    mLastOffset = positionOffset;
}
 
源代码3 项目: ViewPagerCards   文件: ShadowTransformer.java
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
    int realCurrentPosition;
    int nextPosition;
    float baseElevation = mAdapter.getBaseElevation();
    float realOffset;
    boolean goingLeft = mLastOffset > positionOffset;

    // If we're going backwards, onPageScrolled receives the last position
    // instead of the current one
    if (goingLeft) {
        realCurrentPosition = position + 1;
        nextPosition = position;
        realOffset = 1 - positionOffset;
    } else {
        nextPosition = position + 1;
        realCurrentPosition = position;
        realOffset = positionOffset;
    }

    // Avoid crash on overscroll
    if (nextPosition > mAdapter.getCount() - 1
            || realCurrentPosition > mAdapter.getCount() - 1) {
        return;
    }

    CardView currentCard = mAdapter.getCardViewAt(realCurrentPosition);

    // This might be null if a fragment is being used
    // and the views weren't created yet
    if (currentCard != null) {
        if (mScalingEnabled) {
            currentCard.setScaleX((float) (1 + 0.1 * (1 - realOffset)));
            currentCard.setScaleY((float) (1 + 0.1 * (1 - realOffset)));
        }
        currentCard.setCardElevation((baseElevation + baseElevation
                * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (1 - realOffset)));
    }

    CardView nextCard = mAdapter.getCardViewAt(nextPosition);

    // We might be scrolling fast enough so that the next (or previous) card
    // was already destroyed or a fragment might not have been created yet
    if (nextCard != null) {
        if (mScalingEnabled) {
            nextCard.setScaleX((float) (1 + 0.1 * (realOffset)));
            nextCard.setScaleY((float) (1 + 0.1 * (realOffset)));
        }
        nextCard.setCardElevation((baseElevation + baseElevation
                * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (realOffset)));
    }

    mLastOffset = positionOffset;
}
 
源代码4 项目: Nimbus   文件: ShadowTransformer.java
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
    int realCurrentPosition;
    int nextPosition;
    float baseElevation = mAdapter.getBaseElevation();
    float realOffset;
    boolean goingLeft = mLastOffset > positionOffset;

    // If we're going backwards, onPageScrolled receives the last position
    // instead of the current one
    if (goingLeft) {
        realCurrentPosition = position + 1;
        nextPosition = position;
        realOffset = 1 - positionOffset;
    } else {
        nextPosition = position + 1;
        realCurrentPosition = position;
        realOffset = positionOffset;
    }

    // Avoid crash on overscroll
    if (nextPosition > mAdapter.getCount() - 1
            || realCurrentPosition > mAdapter.getCount() - 1) {
        return;
    }

    CardView currentCard = mAdapter.getCardViewAt(realCurrentPosition);

    // This might be null if a fragment is being used
    // and the views weren't created yet
    if (currentCard != null) {
        if (mScalingEnabled) {
            currentCard.setScaleX((float) (1 + 0.1 * (1 - realOffset)));
            currentCard.setScaleY((float) (1 + 0.1 * (1 - realOffset)));
        }
        currentCard.setCardElevation((baseElevation + baseElevation
                * (TeamInterface.MAX_ELEVATION_FACTOR - 1) * (1 - realOffset)));
    }

    CardView nextCard = mAdapter.getCardViewAt(nextPosition);

    // We might be scrolling fast enough so that the next (or previous) card
    // was already destroyed or a fragment might not have been created yet
    if (nextCard != null) {
        if (mScalingEnabled) {
            nextCard.setScaleX((float) (1 + 0.1 * (realOffset)));
            nextCard.setScaleY((float) (1 + 0.1 * (realOffset)));
        }
        nextCard.setCardElevation((baseElevation + baseElevation
                * (TeamInterface.MAX_ELEVATION_FACTOR - 1) * (realOffset)));
    }

    mLastOffset = positionOffset;
}
 
源代码5 项目: Dictionary   文件: ShadowTransformer.java
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
    int realCurrentPosition;
    int nextPosition;
    float baseElevation = mAdapter.getBaseElevation();
    float realOffset;
    boolean goingLeft = mLastOffset > positionOffset;

    // If we're going backwards, onPageScrolled receives the last position
    // instead of the current one
    if (goingLeft) {
        realCurrentPosition = position + 1;
        nextPosition = position;
        realOffset = 1 - positionOffset;
    } else {
        nextPosition = position + 1;
        realCurrentPosition = position;
        realOffset = positionOffset;
    }

    // Avoid crash on overscroll
    if (nextPosition > mAdapter.getCount() - 1
            || realCurrentPosition > mAdapter.getCount() - 1) {
        return;
    }

    CardView currentCard = mAdapter.getCardViewAt(realCurrentPosition);

    // This might be null if a fragment is being used
    // and the views weren't created yet
    if (currentCard != null) {
        if (mScalingEnabled) {
            currentCard.setScaleX((float) (1 + 0.1 * (1 - realOffset)));
            currentCard.setScaleY((float) (1 + 0.1 * (1 - realOffset)));
        }
        currentCard.setCardElevation((baseElevation + baseElevation
                * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (1 - realOffset)));
    }

    CardView nextCard = mAdapter.getCardViewAt(nextPosition);

    // We might be scrolling fast enough so that the next (or previous) card
    // was already destroyed or a fragment might not have been created yet
    if (nextCard != null) {
        if (mScalingEnabled) {
            nextCard.setScaleX((float) (1 + 0.1 * (realOffset)));
            nextCard.setScaleY((float) (1 + 0.1 * (realOffset)));
        }
        nextCard.setCardElevation((baseElevation + baseElevation
                * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (realOffset)));
    }

    mLastOffset = positionOffset;
}
 
源代码6 项目: Pano360   文件: ShadowTransformer.java
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
    int realCurrentPosition;
    int nextPosition;
    float baseElevation = mAdapter.getBaseElevation();
    float realOffset;
    boolean goingLeft = mLastOffset > positionOffset;

    // If we're going backwards, onPageScrolled receives the last position
    // instead of the current one
    if (goingLeft) {
        realCurrentPosition = position + 1;
        nextPosition = position;
        realOffset = 1 - positionOffset;
    } else {
        nextPosition = position + 1;
        realCurrentPosition = position;
        realOffset = positionOffset;
    }

    // Avoid crash on overscroll
    if (nextPosition > mAdapter.getCount() - 1
            || realCurrentPosition > mAdapter.getCount() - 1) {
        return;
    }

    CardView currentCard = mAdapter.getCardViewAt(realCurrentPosition);

    // This might be null if a fragment is being used
    // and the views weren't created yet
    if (currentCard != null) {
        if (mScalingEnabled) {
            currentCard.setScaleX((float) (1 + 0.1 * (1 - realOffset)));
            currentCard.setScaleY((float) (1 + 0.1 * (1 - realOffset)));
        }
        currentCard.setCardElevation((baseElevation + baseElevation
                * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (1 - realOffset)));
    }

    CardView nextCard = mAdapter.getCardViewAt(nextPosition);

    // We might be scrolling fast enough so that the next (or previous) card
    // was already destroyed or a fragment might not have been created yet
    if (nextCard != null) {
        if (mScalingEnabled) {
            nextCard.setScaleX((float) (1 + 0.1 * (realOffset)));
            nextCard.setScaleY((float) (1 + 0.1 * (realOffset)));
        }
        nextCard.setCardElevation((baseElevation + baseElevation
                * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (realOffset)));
    }

    mLastOffset = positionOffset;
}
 
源代码7 项目: ViewPagerCards   文件: ShadowTransformer.java
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
    int realCurrentPosition;
    int nextPosition;
    float baseElevation = mAdapter.getBaseElevation();
    float realOffset;
    boolean goingLeft = mLastOffset > positionOffset;

    // If we're going backwards, onPageScrolled receives the last position
    // instead of the current one
    if (goingLeft) {
        realCurrentPosition = position + 1;
        nextPosition = position;
        realOffset = 1 - positionOffset;
    } else {
        nextPosition = position + 1;
        realCurrentPosition = position;
        realOffset = positionOffset;
    }

    // Avoid crash on overscroll
    if (nextPosition > mAdapter.getCount() - 1
            || realCurrentPosition > mAdapter.getCount() - 1) {
        return;
    }

    CardView currentCard = mAdapter.getCardViewAt(realCurrentPosition);

    // This might be null if a fragment is being used
    // and the views weren't created yet
    if (currentCard != null) {
        if (mScalingEnabled) {
            currentCard.setScaleX((float) (1 + 0.1 * (1 - realOffset)));
            currentCard.setScaleY((float) (1 + 0.1 * (1 - realOffset)));
        }
        currentCard.setCardElevation((baseElevation + baseElevation
                * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (1 - realOffset)));
    }

    CardView nextCard = mAdapter.getCardViewAt(nextPosition);

    // We might be scrolling fast enough so that the next (or previous) card
    // was already destroyed or a fragment might not have been created yet
    if (nextCard != null) {
        if (mScalingEnabled) {
            nextCard.setScaleX((float) (1 + 0.1 * (realOffset)));
            nextCard.setScaleY((float) (1 + 0.1 * (realOffset)));
        }
        nextCard.setCardElevation((baseElevation + baseElevation
                * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (realOffset)));
    }

    mLastOffset = positionOffset;
}
 
源代码8 项目: ahoy-onboarding   文件: ShadowTransformer.java
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
    int realCurrentPosition;
    int nextPosition;
    float baseElevation = mAdapter.getBaseElevation();
    float realOffset;
    boolean goingLeft = mLastOffset > positionOffset;

    // If we're going backwards, onPageScrolled receives the last position
    // instead of the current one
    if (goingLeft) {
        realCurrentPosition = position + 1;
        nextPosition = position;
        realOffset = 1 - positionOffset;
    } else {
        nextPosition = position + 1;
        realCurrentPosition = position;
        realOffset = positionOffset;
    }

    // Avoid crash on overscroll
    if (nextPosition > mAdapter.getCount() - 1
            || realCurrentPosition > mAdapter.getCount() - 1) {
        return;
    }

    CardView currentCard = mAdapter.getCardViewAt(realCurrentPosition);

    // This might be null if a fragment is being used
    // and the views weren't created yet
    if (currentCard != null) {
        if (mScalingEnabled) {
            currentCard.setScaleX((float) (1 + 0.1 * (1 - realOffset)));
            currentCard.setScaleY((float) (1 + 0.1 * (1 - realOffset)));
        }
        currentCard.setCardElevation((baseElevation + baseElevation
                * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (1 - realOffset)));
    }

    CardView nextCard = mAdapter.getCardViewAt(nextPosition);

    // We might be scrolling fast enough so that the next (or previous) card
    // was already destroyed or a fragment might not have been created yet
    if (nextCard != null) {
        if (mScalingEnabled) {
            nextCard.setScaleX((float) (1 + 0.1 * (realOffset)));
            nextCard.setScaleY((float) (1 + 0.1 * (realOffset)));
        }
        nextCard.setCardElevation((baseElevation + baseElevation
                * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (realOffset)));
    }

    mLastOffset = positionOffset;
}
 
源代码9 项目: FastAccess   文件: ShadowTransformer.java
@Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
    int realCurrentPosition;
    int nextPosition;
    float baseElevation = mAdapter.getBaseElevation();
    float realOffset;
    boolean goingLeft = mLastOffset > positionOffset;

    // If we're going backwards, onPageScrolled receives the last position
    // instead of the current one
    if (goingLeft) {
        realCurrentPosition = position + 1;
        nextPosition = position;
        realOffset = 1 - positionOffset;
    } else {
        nextPosition = position + 1;
        realCurrentPosition = position;
        realOffset = positionOffset;
    }

    // Avoid crash on overscroll
    if (nextPosition > mAdapter.getCount() - 1
            || realCurrentPosition > mAdapter.getCount() - 1) {
        return;
    }

    CardView currentCard = mAdapter.getCardViewAt(realCurrentPosition);

    // This might be null if a fragment is being used
    // and the views weren't created yet
    if (currentCard != null) {
        if (mScalingEnabled) {
            currentCard.setScaleX((float) (1 + 0.1 * (1 - realOffset)));
            currentCard.setScaleY((float) (1 + 0.1 * (1 - realOffset)));
        }
        currentCard.setCardElevation((baseElevation + baseElevation
                * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (1 - realOffset)));
    }

    CardView nextCard = mAdapter.getCardViewAt(nextPosition);

    // We might be scrolling fast enough so that the next (or previous) card
    // was already destroyed or a fragment might not have been created yet
    if (nextCard != null) {
        if (mScalingEnabled) {
            nextCard.setScaleX((float) (1 + 0.1 * (realOffset)));
            nextCard.setScaleY((float) (1 + 0.1 * (realOffset)));
        }
        nextCard.setCardElevation((baseElevation + baseElevation * (CardAdapter.MAX_ELEVATION_FACTOR - 1) * (realOffset)));
    }

    mLastOffset = positionOffset;
}