为了账号安全,请及时绑定邮箱和手机立即绑定

我的三角形也没有显示出来求解答



private Paint mPaint;
 private Path mPath;
 private int mTriangleWidth;
 private int mTriangleHeight;
 //初始位置
 private int mInitTanslateX;
//移动的位置
 private int mTranslateX;
private static final String TAG = "ViewPagerIndicator";
 private static float RADIO_TRIANGLE = 1/6F;
public ViewPagerIndicator(Context context) {
    this(context,null);
}

public ViewPagerIndicator(Context context, AttributeSet attrs) {
    super(context, attrs);

    mPaint = new Paint();
    /**
     *  Helper for setFlags(), setting or clearing the ANTI_ALIAS_FLAG bit
     * AntiAliasing smooths out the edges of what is being drawn,
     */
    mPaint.setAntiAlias(true);

    //@ parseColor
    // * Parse the color string, and return the corresponding color-int.
    mPaint.setColor(Color.parseColor("#ffffffff"));

    mPaint.setStyle(Paint.Style.FILL);

    mPaint.setPathEffect(new CornerPathEffect(3));

}

/**
 * 这里绘制三角形
 * @param canvas
 */
@Override
protected void dispatchDraw(Canvas canvas) {

    canvas.save();

   //这个方法什么意思?
    canvas.translate(mInitTanslateX+mTranslateX,getWidth());

    canvas.drawPath(mPath,mPaint);

    canvas.restore();

    super.dispatchDraw(canvas);
    Log.d(TAG, "dispatchDraw: ");
}

//当当前VIEW的size发生变化的时候就会调用这个方法
// @param w Current width of this view.
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
    super.onSizeChanged(w, h, oldw, oldh);

    mTriangleWidth = (int) (w/3 *RADIO_TRIANGLE);

    mTriangleHeight = mTriangleWidth/2;

    mInitTanslateX =   w/2/3-mTriangleHeight/2;

    initTriangle();
}

private void initTriangle() {
    mPath =new Path();
    //@param x The x-coordinate of the start of a new contou(新轮廓)
    mPath.moveTo(0,0);

    mPath.lineTo(mTriangleWidth,0);

    mPath.lineTo(mTriangleWidth/2,-mTriangleHeight);

    mPath.close();
    Log.d(TAG, "initTriangle: ");
}

正在回答

1 回答

canvas.translate(mInitTanslateX+mTranslateX,getWidth()); --------->canvas.translate(mInitTanslateX+mTranslateX,getHeight()); 

1 回复 有任何疑惑可以回复我~
#1

幕布斯0564268 提问者

非常感谢!
2016-10-16 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android-自定义ViewPager指示器
  • 参与学习       30028    人
  • 解答问题       75    个

带领大家实现最火爆的跟随型指示器,学完保准压倒一片

进入课程

我的三角形也没有显示出来求解答

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信