基本信息
源码名称:android画图板,可将内容保存为图片(可用作电子签名)
源码大小:1.19M
文件格式:.zip
开发语言:Java
更新时间:2015-11-30
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
package com.example.huatuban; import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.DialogInterface.OnClickListener; import android.graphics.Color; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.SubMenu; import android.view.View; import android.view.Window; import android.widget.SeekBar; import android.widget.SeekBar.OnSeekBarChangeListener; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends Activity { /**画画的内容区*/ private HuaBanView hbView; /**设置粗细的Dialog*/ private AlertDialog dialog; private View dialogView; private TextView shouWidth; private SeekBar widthSb; private int paintWidth; private void initView(){ dialogView = getLayoutInflater().inflate(R.layout.dialog_width_set, null); shouWidth = (TextView) dialogView.findViewById(R.id.textView1); widthSb = (SeekBar) dialogView.findViewById(R.id.seekBar1); widthSb.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { @Override public void onStopTrackingTouch(SeekBar seekBar) { } @Override public void onStartTrackingTouch(SeekBar seekBar) { } @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { shouWidth.setText("当前选中宽度:" (progress 1)); paintWidth = progress 1; } }); hbView = (HuaBanView)findViewById(R.id.huaBanView1); dialog = new AlertDialog.Builder(this).setIcon(android.R.drawable.ic_dialog_info).setTitle("设置画笔宽度"). setView(dialogView).setPositiveButton("确定", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { hbView.setPaintWidth(paintWidth); } }).setNegativeButton("取消", null).create(); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //去掉应用标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); initView(); } @Override public boolean onCreateOptionsMenu(Menu menu) { SubMenu colorSm = menu.addSubMenu(1, 1, 1, "选择画笔颜色"); colorSm.add(2, 200, 200, "红色"); colorSm.add(2, 210, 210, "绿色"); colorSm.add(2, 220, 220, "蓝色"); colorSm.add(2, 230, 230, "紫色"); colorSm.add(2, 240, 240, "黄色"); colorSm.add(2, 250, 250, "黑色"); menu.add(1, 2, 2, "设置画笔粗细"); SubMenu widthSm = menu.addSubMenu(1, 3, 3, "设置画笔样式"); widthSm.add(3, 300, 300, "线状画笔"); widthSm.add(3, 301, 301, "填充画笔"); menu.add(1, 4, 4, "清空画布"); menu.add(1, 5, 5, "保存画布"); menu.add(1, 6, 6, "退出应用"); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { int index = item.getItemId(); switch(index){ case 200: hbView.setColor(Color.RED); break; case 210: hbView.setColor(Color.GREEN); break; case 220: hbView.setColor(Color.BLUE); break; case 230: hbView.setColor(Color.MAGENTA); break; case 240: hbView.setColor(Color.YELLOW); break; case 250: hbView.setColor(Color.BLACK); break; case 2: dialog.show(); break; case 300: hbView.setStyle(HuaBanView.PEN); break; case 301: hbView.setStyle(HuaBanView.PAIL); break; case 4: hbView.clearScreen(); break; case 5: if(SaveViewUtil.saveScreen(hbView)){ Toast.makeText(this, "截图成功", 0).show(); }else{ Toast.makeText(this, "截图失败,请检查sdcard是否可用", 0).show(); } break; case 6: finish(); break; } return true; } }