绘制Android的机器人

1、布局文件

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/frameLayout1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
    
</FrameLayout>

2、MainActivity

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        FrameLayout ll = (FrameLayout)findViewById(R.id.frameLayout1);
        ll.addView(new MyView(this));
    }

    public class MyView extends View{
		public MyView(Context context) {
			super(context);
		}
		@Override
		protected void onDraw(Canvas canvas) {
			Paint paint = new Paint();//采用默认设置创建一个画笔
			paint.setAntiAlias(true);//使用抗锯齿功能
			paint.setColor(0xFFA4C739);//设置画笔的颜色为绿色
			//绘制机器人的头
			RectF rectf_head = new RectF(10,10,100,100);
			rectf_head.offset(100, 20);
			canvas.drawArc(rectf_head, -10, -160, false, paint);//绘制弧
			//绘制眼睛
			paint.setColor(Color.WHITE);//设置画笔的颜色为白色
			canvas.drawCircle(135, 53, 4, paint);//绘制圆
			canvas.drawCircle(175, 53, 4, paint);//绘制圆
			paint.setColor(0xFFA4C739);//设置画笔的颜色为绿色
			//绘制天线
			paint.setStrokeWidth(2);//设置笔触的宽度
			canvas.drawLine(120, 15, 135, 35, paint);//绘制线
			canvas.drawLine(190, 15, 175, 35, paint);//绘制线
			//绘制身体
			canvas.drawRect(110, 75, 200, 150, paint);//绘制矩形
			RectF rectf_body = new RectF(110, 140, 200, 160);
			canvas.drawRoundRect(rectf_body, 10, 10, paint);//绘制圆角矩形
			//绘制胳膊
			RectF rect_arm = new RectF(85, 75, 105, 140);
			canvas.drawRoundRect(rect_arm, 10, 10, paint);//绘制左侧的胳膊
			rect_arm.offset(120, 0);//设置在x轴上偏移120像素
			canvas.drawRoundRect(rect_arm, 10, 10, paint);//绘制右侧的胳膊
			//绘制腿
			RectF rect_leg = new RectF(125, 150, 145, 200);
			canvas.drawRoundRect(rect_leg, 10, 10, paint);//绘制左侧的腿
			rect_leg.offset(40, 0);//设置在X轴上偏移40像素
			canvas.drawRoundRect(rect_leg, 10, 10, paint);//绘制右侧的腿
			super.onDraw(canvas);
		}
    }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值