【问题标题】:How do I draw a rectangle to a canvas on a button press (Android?)如何在按下按钮时在画布上绘制一个矩形(Android?)
【发布时间】:2012-07-17 07:43:58
【问题描述】:

我的项目现在实际上有好几行代码,所以我将只在此处包含重要的内容来节省您的时间。我希望有足够的信息来说明问题。

我有两个主要的类:一个“GraphView”类,然后是主 Activity 的代码。在 GraphView 中,我创建了一个函数,它本质上是在画布上绘制一个矩形。它被称为drawPixel。在 GraphView 的 onDraw 方法中,我多次调用 drawPixel,它在屏幕上绘制矩形。现在,在主代码中,我以编程方式创建了一个布局和一个按钮。我想要的是,我不想在 GraphView 的 onDraw 方法中调用 drawPixel,而是想在单击按钮时绘制那些矩形。我尝试这样做:

someButton.setOnClickListener(new View.OnClickListener() { 
    @Override
    public void onClick(View v) {
        Canvas canvas = new Canvas(); 
        // TODO Auto-generated method stub
            for (int i=1; i<50; i++) {
                someGraphView.drawPixel(canvas, i, i); 
            }
        }
});

没有用。当我通过 onDraw() 调用时,矩形正确绘制,但是当我从 setOnClickListener 方法内部调用它们时,它们根本不绘制。有谁知道我做错了什么?

【问题讨论】:

    标签: android button android-canvas buttonclick


    【解决方案1】:

    一旦在您的视图上编写调用 invalidate()。

    【讨论】:

      猜你喜欢
      • 2020-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-11
      • 1970-01-01
      • 1970-01-01
      • 2013-01-24
      • 1970-01-01
      相关资源
      最近更新 更多