dxt_1515 2016-07-06 11:39 采纳率: 25%
浏览 1919

安卓,如何拿到数据进行实时画图?

我把拿到的数据封装成一个getset方法,在我自定义画图的View里可以接收得到数据。但是想问一下,如何能动态画图,因为我画出来的图在我页面上是静态的,我的数据都放在动态数组里,我希望从数组里拿到一个数据,画一个点,这样的效果。如果动态是采用Handler或是Timer吗?想问一下,如果用到这两个机制,应该放在什么位置,或者调用呢?望大家赐教,不剩感激!!!
canvas.drawPoint(SPACING + smallDottedH+x, mGradientHeight- smallDottedZ * Integer.parseInt((String) po.get(y)),
paint1);这个是我画点的方法!

  • 写回答

1条回答

  • lee3219237 2017-03-14 03:13
    关注

    Activity中
    @BindView(R.id.my_progress_view)
    ProgressView myProgressView;//你的自定义控件
    private int index = 0;//数组索引
    private int[] data = {1,2,3,4,5,6,10};//你的动态数组
    public void onCreate() {
    processMove();
    }

    private void processMove() {
        myProgressView.postDelayed(new Runnable() {
            @Override
            public void run() {
                if (index < data.lenth) {
                    myProgressView.setProcess(data[index]);
                                        index++;
                                          processMove();
                }
            }
        }, 15);//这里是每帧多少秒刷新一次
    }
    
        自定义控件中
    
           public void setProcess(int process) {
        this.process = process ;
        invalidate();//这个方法会使你的onDraw()方法重新调用一次
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员
  • ¥15 matlab生成电测深三层曲线模型代码