private void init(Context context) { paint = new Paint(Paint.ANTI_ALIAS_FLAG); textPaint = new TextPaint(Paint.ANTI_ALIAS_FLAG); axisLabelTextSize = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 10, context.getResources().getDisplayMetrics()); //test items if (isInEditMode()) setItems(createTestData()); }
@Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); clipRect.set(getPaddingLeft() + lOffset, getPaddingTop() + tOffset, getWidth() - getPaddingRight() - rOffset, getHeight() - getPaddingBottom() - bOffset); drawAxis(canvas); float[] xAxisScales = calculateXScales(clipRect.left); float[] yAxisScales = calculateYScales(clipRect.bottom); drawXAxisScales(canvas, xAxisScales, 10); drawYAxisScales(canvas, yAxisScales, 10); clipRect.set(getPaddingLeft(), getPaddingTop(), getWidth() - getPaddingRight(), getHeight() - getPaddingBottom()); textPaint.setColor(axisLabelTextColor); textPaint.setTextSize(axisLabelTextSize); textPaint.setTypeface(Typeface.defaultFromStyle(Typeface.NORMAL)); textPaint.setAlpha(0xFF); drawXAxisLabels(canvas, xAxisScales); drawYAxisLabels(canvas, yAxisScales); clipRect.set(getPaddingLeft() + lOffset, getPaddingTop() + tOffset, getWidth() - getPaddingRight() - rOffset, getHeight() - getPaddingBottom() - bOffset); drawItems(canvas); if (isPressed) { } else { drawSelectedItemDetailInfo(canvas); } }
@Override public void handleUIMessage(Message msg) { super.handleUIMessage(msg); verticalColumnarGraphView.initCustomUI( new VerticalColumnarGraphView.Builder() .setYAxisLabels(new String[]{"\u20000", "25", "50", "75", "100"}) .setOffset(60, 0, 20, 20) ); verticalColumnarGraphView.setItems(createTestData()); }
int chartWidth = calculateSuitableChartWidth(clipRect.width()); space = chartWidth; int chartHeight = clipRect.height(); if (i == selectedIndex) { paint.setAlpha(0xFF); drawSelectedItem(canvas, item, rectF, paint); } else { paint.setAlpha(selectedIndex < 0 ? 0xFF : 0x66);