这次是基于调色板上改的画板,上面的---------1.---------------2.------------------3.-------------------4是相互对应的,方便看主要代码:
(MainActivity.java)
package com.example.color;
import java.io.File;
import java.io.FileOutputStream;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.Bitmap.CompressFormat;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.Menu;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.ProgressBar;
import android.widget.SeekBar;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener,SeekBar.OnSeekBarChangeListener,OnTouchListener{
private Button button1,button2,button3;//红绿蓝
private ProgressBar progress_bar1,progress_bar2,progress_bar3;//缓冲条
//缓冲条----------------------------------------------------------------------------------------1
static int r = 0,g = 0 ,b = 0;//定义三个静态变量
private SeekBar seekbar1,seekbar2,seekbar3; //声明三个,进度条seekbar对象
private TextView textview1,textview2,textview3;//左边的显示进度数字的文本框
private View view;//最下面一个填充色框
//进度条----------------------------------------------------------------------------------------2
private Button red,green,blue;//按钮红绿蓝
//按钮---------------------------------------------------------------------------------------- 3
//第一步:声明一些全局上使用的变量
//FrameLayout上面一层
private ImageView imageview;//接收布局文件上的显示控件 ,让画布在上面画
private Bitmap baseBitmap;//声明一个可以用来编辑的bitmap(位图),相当于图片的存储空间
private Canvas canvas; //画布的声明
private Paint paint; //画笔的声明
private float startx;//设置点击的坐标点x
private float starty;//设置点击的坐标点y
//画笔---------------------------------------------------------------------------------------- 4
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button1=(Button) findViewById(R.id.button1);
button2=(Button) findViewById(R.id.button2);
button3=(Button) findViewById(R.id.button3);
progress_bar1=(ProgressBar) findViewById(R.id.progress_bar1);
progress_bar2=(ProgressBar) findViewById(R.id.progress_bar2);
progress_bar3=(ProgressBar) findViewById(R.id.progress_bar3);
button1.setOnClickListener(this);
button2.setOnClickListener(this);
button3.setOnClickListener(this);
progress_bar1.setOnClickListener(this);
progress_bar2.setOnClickListener(this);
progress_bar3.setOnClickListener(this);
//----------------------------------------------------------------------------------------- 1
textview1=(TextView) findViewById(R.id.textview1); //获取textview对象
textview2=(TextView) findViewById(R.id.textview2);
textview3=(TextView) findViewById(R.id.textview3);
seekbar1 = (SeekBar)findViewById(R.i