/**
* @param canvas
* @param position
* 距离mCurrentSelected的差
* @param type
* 1表示向下绘制,-1表示向上绘制
*/
private void drawOtherText(Canvas canvas, int position, int type)
{
float d = (float) (MARGIN_ALPHA * mMinTextSize * position + type
* mMoveLen);
float scale = parabola(mViewHeight / 4.0f, d);
float size = (mMaxTextSize - mMinTextSize) * scale + mMinTextSize;
mPaint.setTextSize(size);
mPaint.setAlpha((int) ((mMaxTextAlpha - mMinTextAlpha) * scale + mMinTextAlpha));
float y = (float) (mViewHeight / 2.0 + type * d);
FontMetricsInt fmi = mPaint.getFontMetricsInt();
float baseline = (float) (y - (fmi.bottom / 2.0 + fmi.top / 2.0));
int valuePosition = mCurrentSelected + type * position;
//调整位置偏差在 合法范围
int dataSize = mDataList.size();
valuePosition = (valuePosition + dataSize) % dataSize;
//if(valuePosition >= 0 & valuePosition < dataSize) {//以防万一
canvas.drawText(mDataList.get(valuePosition),
(float) (mViewWidth / 2.0), baseline, mPaint);
//}
}
PickerViewCircle.java 文件源码
java
阅读 24
收藏 0
点赞 0
评论 0
项目:AndroidStartupDemo
作者:
评论列表
文章目录