I have a box in my MainActivity that I want to draw sound data I’m recording from the mic. I can’t get box view to call onDraw again and update from data I’m getting from an AsyncTask.
I have my view class in its own file..
public class MyView extends View {...
int radius = 0;
public start(MainActivity acitivity){
new MyAsyncTask(activity).execute();
}
@Override
protected void onDraw(Canvas canvas){
canvas.DrawCircle(contentWidth >> 1, contentHeight >> 1, radius, circlePaint);
@Override
protected void invalidate()...
public static class MyAsyncTask extends AsyncTask{...
@Override
protected void onProgressUpdate(int newRadius){
radius = newRadius;
activityReference.get().findViewById(R.id.my_view).invalidate();
My MainActivity..
public class MainActivity..
onCreate(){
MyView myView = findViewById(R.id.my_view);
myView.setWillNotDraw(false);
myView.start(this);
My app draws a circle but won’t update. I’m continually calling invalidate from my AsyncTask’s onProgressUpdate but onDraw is never called again.