路径没有绘制到Android应用程序中的画布

时间:2017-07-15 02:38:25

标签: android canvas path

我在一个线程上的两个List数组上加载浮点值。 加载值后,数组将设置为两个MainActivity静态List数组。

这些值完全加载到List数组中。在扩展Drawable并覆盖onDraw()的DummyDraw类中,我能够根据MainActivity List数组中的值绘制圆圈,但是当我尝试 创建路径对象并将值加载到路径对象,然后尝试绘制路径,它不会绘制。这是onDraw()中的代码:

//inside onDraw() on DummyDraw class which extends Draw-able:

//in the constructor:
path = new path();

//inside onDraw():
for(int u = 0; u < MainActivity.valueList.size(); u++){
float x = MainActivity.valueList.get(u);
float y = MainActivity.valueList2.get(u);
if(u==0)path.moveTo(x,y);else path.lineTo(x,y);
//canvas.drawCircle(x,y,0.5f*densityMultiplier,points);
}

canvas.drawPath(path,points);// this doesn't draw anything to the screen

任何想法或建议,谢谢。

1 个答案:

答案 0 :(得分:0)

经过大量的试验和错误以及有关quadto和rQuadTo方法的阅读后,我找到了一种方法来为我的绘图功能需求创建一个非常优秀的平滑曲线近似值:

使用List数组中前一个和当前点的概念:

 <script>
        $(document).ready(function () {
            $.ajax({
                url: 'AdminHome.aspx/getUsersForTable',
                method: 'post',
                dataType: 'json',
                success: function (data) {
                    $('#tableUserList').dataTable({
                        paging: true,
                        sort: true,
                        searching: true,
                        scrollY: 200,
                        data: data,
                            columns: [
                                { 'data': 'UserID' },
                                //rest follows with column names].
                //end of datatable
                });
               //end of success function
              }
               //end of ajax call
                });
              //end of ready event.
        });

上面的代码将遍历两个包含x和y坐标的数组,并创建一个非常优秀的平滑曲线。然而,在放大我的视野后,我可以看到我的曲线有些模糊。有谁知道我应该怎么做我的油漆对象来消除这种模糊性?