Android_Mars_数独开发01

本文内容是来自千锋学院Mars老师的视频,通过看Mars老师的视频,整理学习笔记。在此,感谢Mars老师的无私奉献的教育资源,同样,很感谢互联网这个平台,感谢互联网“开放,自由,平等,共享”的伟大精神。

1、数独开发设计的知识

(1)Android图形学编程基础知识。

(2)自定义View的实现。

(3)Paint对象的使用。

(4)Canvas对象的使用。

2、画笔Paint和画布Canvas对象

在本游戏的开发中,主要用到了画笔对象和画布对象。通过定义一系列的画笔,然后我们就能够在画布上画出我们想要的图形,包括线条,圆,长方形,字符串,图片等。

定义画笔的颜色用到的是Color对象。

定义画笔的颜色有三种方法:

(1)调用系统自定义的颜色,例如:int color = Color.BLUE;

(2)自定义的颜色,例如:int color = Color.argb(177,255,255,255);其中argb几个字母的意思为:a(透明度),r(red红色),g(green绿色),b(blue蓝色)。

(3)还可以自定义好颜色在xml布局文件中,通过代码调用。

例如:颜色资源文件为:res/values/colors.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="shudu_background">#ffe6f0ff</color>
   	<color name="shudu_hilite">#ffffffff</color>
   	<color name="shudu_light">#64c6d4ef</color>
   	<color name="shudu_dark">#6456648f</color>
</resources>
在代码中调用该xml文件中定义的颜色:

//定义画笔对象-->绘制格子线条
		Paint darkPaint = new Paint();
		darkPaint.setColor(getResources().getColor(R.color.shudu_dark));
		
		Paint hilitePaint = new Paint();
		hilitePaint.setColor(getResources().getColor(R.color.shudu_hilite));
		
		Paint lightPaint = new Paint();
		lightPaint.setColor(getResources().getColor(R.color.shudu_light));

3、下面通过来绘制一条蓝色的直线,来练习上面的对象。

(1)首先自定义一个View,然后覆写其中的onDraw(Canvas canvas)方法。

package com.mars.demo;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.View;

public class MyView extends View
{

	public MyView(Context context)
	{
		super(context);
		// TODO Auto-generated constructor stub
	}

	//当Android系统需要绘制一个View对象时,就调用该方法
	@Override
	protected void onDraw(Canvas canvas)
	{
		// TODO Auto-generated method stub
		super.onDraw(canvas);
		//定义画笔对象
		Paint paint = new Paint();
		//为画笔设置颜色
		paint.setColor(Color.BLUE);
		//调用画布对象画一条蓝色的线
		canvas.drawLine(0, 0, 200, 200, paint);
	}
	
}

该蓝色直线的坐标原点在手机的左上角的位置,例如:

(2)然后再MainActivity中调用该View就可以画出一条蓝色的直线了。

package com.mars.demo;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.View;

public class MyView extends View
{

	public MyView(Context context)
	{
		super(context);
		// TODO Auto-generated constructor stub
	}

	//当Android系统需要绘制一个View对象时,就调用该方法
	@Override
	protected void onDraw(Canvas canvas)
	{
		// TODO Auto-generated method stub
		super.onDraw(canvas);
		//定义画笔对象
		Paint paint = new Paint();
		//为画笔设置颜色
		paint.setColor(Color.BLUE);
		//调用画布对象画一条蓝色的线
		canvas.drawLine(0, 0, 200, 200, paint);
	}
	
}

这篇博客就记录这些了。算是数独游戏的一个开始哦。接下来将慢慢进入数独游戏的开发。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值