aide安卓编程06-全屏涂色
2018-10-01 本文已影响0人
傻傻不知天年
先把屏幕方向设为竖屏:
设为竖屏
进入MainActivity.java 点上边小三角按钮
进入java文件
把所有代码删掉,替换成下面的代码:
运行效果
进res/layout文件夹
删除main.xml
进入MainActivity.java 点上边小三角按钮
进入java文件
把所有代码删掉,替换成下面的代码:
package com.baobao.sayhello;
import android.app.*;
import android.content.*;
import android.os.*;
import android.view.*;
import android.graphics.*;
class mview extends View{//自定义一个叫mview的新类型,继承View
public mview(Context con){//构造(初始化)函数
super(con);
}
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh)
{
//窗口大小改变时触发
super.onSizeChanged(w, h, oldw, oldh);
}
@Override
protected void onDraw(Canvas canvas)
{
//绘图时触发
super.onDraw(canvas);
canvas.drawColor(Color.rgb(100,0,0));//把全屏涂成红色
}
}
public class MainActivity extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
mview view=new mview(this);//新建一个叫view的mview
setContentView(view);//把view设为整个界面
}
}
替换完成
运行之后全屏都是深红色。
运行效果
从代码里的注释可以看出我们先定义了一种View类型的组件,叫mview;又生成一个叫view的mview类型对象,让它填满屏幕,这样就能在整个屏幕画图并且监控手指的滑动了。
所有的绘图操作都在第25行。canvas是画布,它有很多画图功能,比如画图形,画文字,画图片。这里我们使用的是把整个显示区域涂成同种颜色的drawcolor函数。他的唯一一个参数就是要涂的颜色。这里我们选用深红色,所以红色绿色蓝色的配比是100:0:0。把这三个数分别作为Color.rgb函数的3个参数就好了。
关于rgb配比
rgb是用红绿蓝三原色的分量表示颜色的方法。r代表红色值,g代表绿色值,b代表蓝色值。r占比越大越接近红色,g占比越大越接近绿色,b占比越大越接近蓝色。
rgb3个数值必须取0~255间的整数。
常用颜色的rgb值:
黑 0 0 0
白255 255 255
红255 0 0
绿0 255 0
蓝0 0 255
青0 255 255
紫255 0 255
黄255 255 0
橙255 127 0
粉255 127 127
大家可以改变rgb的值后运行,看看变成什么颜色。
现在可以把多余的res/layout文件夹下的main.xml文件删掉:
进res/layout文件夹
删除main.xml