2016-03-14 77 views
1

我下面的教程,并有下面的代码,但我想修改它一点点,所以我想它必须充满另一科洛尔圆圈内点击它的时候,我怎么能做到这一点,因为我刚学这个概念我没有它可以如何做任何想法:/Android的绘图

public class MainActivity extends Activity { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(new MyView(this)); 
    } 

    public class MyView extends View { 
     public MyView(Context context) { 
       super(context); 
     } 

     @Override 
     protected void onDraw(Canvas canvas) { 
      super.onDraw(canvas); 
      int x = getWidth(); 
      int y = getHeight(); 
      int radius; 
      radius = 100; 
      Paint paint = new Paint(); 
      paint.setStyle(Paint.Style.FILL); 
      paint.setColor(Color.WHITE); 
      canvas.drawPaint(paint); 
      paint.setColor(Color.parseColor("#CD5C5C")); 
      canvas.drawCircle(x/2, y/2, radius, paint); 
     } 
    } 
} 

回答

1

,你必须对你的看法,更增添一份监听

public class MainActivity extends Activity { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     View myView = new MyView(this); 
     setContentView(myView); 

     myView.setOnTouchListener(new OnTouchListener() { 

      @Override 
      public boolean onTouch(View v, MotionEvent event) { 
       float x = event.getX(); 
       float y = event.getY(); 

       //if(x==... your code here 

       invalidate(); //this repaints the view 
       return false; 
      } 
     }); 
    } 
}