diff --git a/src/Notes1/app/src/main/java/net/micode/notes/ui/DrawActivity.java b/src/Notes1/app/src/main/java/net/micode/notes/ui/DrawActivity.java index 9994937..ea70fe7 100644 --- a/src/Notes1/app/src/main/java/net/micode/notes/ui/DrawActivity.java +++ b/src/Notes1/app/src/main/java/net/micode/notes/ui/DrawActivity.java @@ -1,19 +1,30 @@ package net.micode.notes.ui; import android.app.Activity; +import android.app.AlertDialog; +import android.app.Dialog; +import android.content.Context; +import android.content.DialogInterface; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Matrix; import android.graphics.Paint; +import android.graphics.Typeface; import android.os.Bundle; import android.util.Log; +import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; import android.view.ViewTreeObserver; +import android.view.inputmethod.InputMethodManager; +import android.widget.Button; +import android.widget.EditText; import android.widget.ImageButton; import android.widget.ImageView; +import android.widget.RadioGroup; import android.widget.RelativeLayout; +import android.widget.Toast; import net.micode.notes.R; @@ -32,6 +43,8 @@ public class DrawActivity extends Activity { // 重置按钮 private ImageButton reset_btn; private ImageButton save_paint; + private ImageButton change_thickness; + private ImageButton change_color; private boolean if_draw = false; @Override @@ -60,6 +73,20 @@ public class DrawActivity extends Activity { finish(); } }); + change_thickness = findViewById(R.id.change_thickness); + change_thickness.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + changeThickness(); + } + }); + change_color = findViewById(R.id.change_pen_color); + change_color.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + changeColor(); + } + }); // 绘图 showImage(); } @@ -86,7 +113,7 @@ public class DrawActivity extends Activity { // 画笔颜色为蓝色 paint.setColor(Color.BLUE); // 宽度5个像素 - paint.setStrokeWidth(5); + paint.setStrokeWidth(10); //接缝处圆滑 paint.setStrokeCap(Paint.Cap.ROUND); paint.setStrokeJoin(Paint.Join.ROUND); @@ -112,6 +139,7 @@ public class DrawActivity extends Activity { int endY = (int) event.getY(); // 在开始和结束坐标间画一条线 canvas.drawLine(startX, startY, endX, endY, paint); + //canvas.drawPath(); // 刷新开始坐标 startX = (int) event.getX(); startY = (int) event.getY(); @@ -125,6 +153,94 @@ public class DrawActivity extends Activity { }); } + private void showSoftInput() { + InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); + if (inputMethodManager != null) { + inputMethodManager.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0); + } + } + + private void hideSoftInput(View view) { + InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); + inputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), 0); + } + + public void changeThickness(){ + final AlertDialog.Builder builder = new AlertDialog.Builder(this); + //输入框控件实例化 + View view = LayoutInflater.from(this).inflate(R.layout.change_thickness, null); + final EditText et_change_color = (EditText) view.findViewById(R.id.et_change_thickness); + //显示软件盘 + showSoftInput(); + builder.setTitle("Please enter the brush thickness (1-30)"); + builder.setPositiveButton(android.R.string.ok, null); + //设置取消按钮监听 + builder.setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + hideSoftInput(et_change_color); + } + }); + //显示输入框控件 + final Dialog enter_password_dialog = builder.setView(view).show(); + final Button positive = (Button)enter_password_dialog.findViewById(android.R.id.button1); + positive.setOnClickListener(new View.OnClickListener() { + public void onClick(View v) { + hideSoftInput(et_change_color); + String entered_Thickness = et_change_color.getText().toString(); + float Thickness = Integer.valueOf(entered_Thickness).floatValue(); + Log.i(null, String.valueOf(Thickness)); + paint.setStrokeWidth((Thickness-1) * 10 + 5); + enter_password_dialog.dismiss(); + } + }); + } + + private AlertDialog alertDialog2; + + public void changeColor() { + final String[] items = {"Red", "Yellow", "Green", "Blue", "Black", "Pink", "Orange", "Turquoise","Gray"}; + AlertDialog.Builder alertBuilder = new AlertDialog.Builder(this); + alertBuilder.setTitle("Please select the color"); + alertBuilder.setSingleChoiceItems(items, 0, new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialogInterface, int i) { + switch (i) { + case 0: + paint.setColor(Color.RED); + break; + case 1: + paint.setColor(getResources().getColor(R.color.gold)); + break; + case 2: + paint.setColor(getResources().getColor(R.color.green)); + break; + case 3: + paint.setColor(Color.BLUE); + break; + case 4: + paint.setColor(Color.BLACK); + break; + case 5: + paint.setColor(getResources().getColor(R.color.pink)); + break; + case 6: + paint.setColor(getResources().getColor(R.color.orange)); + break; + case 7: + paint.setColor(getResources().getColor(R.color.turquoise)); + break; + case 8: + paint.setColor(getResources().getColor(R.color.darkgray)); + default: + break; + } + alertDialog2.dismiss(); + } + }); + alertDialog2 = alertBuilder.create(); + alertDialog2.show(); + } + public String saveBitmap(){ //获得系统当前时间,并以该时间作为文件名 SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmss"); diff --git a/src/Notes1/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java b/src/Notes1/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java index 44f680c..1f9f054 100644 --- a/src/Notes1/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java +++ b/src/Notes1/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java @@ -1274,7 +1274,9 @@ public class NoteEditActivity extends Activity implements OnClickListener, } return result; } + AlertDialog alertDialog2; + public void showSingleAlertDiglog(){ final String[] items={"普通","非衬线","衬线","等宽"}; AlertDialog.Builder alertBuilder=new AlertDialog.Builder(this); diff --git a/src/Notes1/app/src/main/res/layout/activity_second.xml b/src/Notes1/app/src/main/res/layout/activity_second.xml index dd392bd..58d707d 100644 --- a/src/Notes1/app/src/main/res/layout/activity_second.xml +++ b/src/Notes1/app/src/main/res/layout/activity_second.xml @@ -71,4 +71,5 @@ + \ No newline at end of file diff --git a/src/Notes1/app/src/main/res/layout/change_color.xml b/src/Notes1/app/src/main/res/layout/change_color.xml new file mode 100644 index 0000000..3a4f5c7 --- /dev/null +++ b/src/Notes1/app/src/main/res/layout/change_color.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/Notes1/app/src/main/res/layout/change_thickness.xml b/src/Notes1/app/src/main/res/layout/change_thickness.xml new file mode 100644 index 0000000..01425b1 --- /dev/null +++ b/src/Notes1/app/src/main/res/layout/change_thickness.xml @@ -0,0 +1,23 @@ + + + + + \ No newline at end of file diff --git a/src/Notes1/app/src/main/res/values/colors.xml b/src/Notes1/app/src/main/res/values/colors.xml index 123ffbf..44680b5 100644 --- a/src/Notes1/app/src/main/res/values/colors.xml +++ b/src/Notes1/app/src/main/res/values/colors.xml @@ -16,5 +16,151 @@ --> - #335b5b5b + #335b5b5b + + #ffffff + #fffff0 + #ffffe0 + #ffff00 + #fffafa + #fffaf0 + #fffacd + #fff8dc + #fff5ee + #fff0f5 + #ffefd5 + #ffebcd + #ffe4e1 + #ffe4c4 + #ffe4b5 + #ffdead + #ffdab9 + #ffd700 + #ffc0cb + #ffb6c1 + #ffa500 + #ffa07a + #ff8c00 + #ff7f50 + #ff69b4 + #ff6347 + #ff4500 + #ff1493 + #ff00ff + #ff00ff + #ff0000 + #fdf5e6 + #fafad2 + #faf0e6 + #faebd7 + #fa8072 + #f8f8ff + #f5fffa + #f5f5f5 + #f5f5dc + #f5deb3 + #f4a460 + #f0ffff + #f0fff0 + #f0f8ff + #f0e68c + #f08080 + #eee8aa + #ee82ee + #e9967a + #e6e6fa + #e0ffff + #deb887 + #dda0dd + #dcdcdc + #dc143c + #db7093 + #daa520 + #da70d6 + #d8bfd8 + #d3d3d3 + #d2b48c + #d2691e + #cd853f + #cd5c5c + #c71585 + #c0c0c0 + #bdb76b + #bc8f8f + #ba55d3 + #b8860b + #b22222 + #b0e0e6 + #b0c4de + #afeeee + #adff2f + #add8e6 + #a9a9a9 + #a52a2a + #a0522d + #9932cc + #98fb98 + #9400d3 + #9370db + #90ee90 + #8fbc8f + #8b4513 + #8b008b + #8b0000 + #8a2be2 + #87cefa + #87ceeb + #808080 + #808080 + #808000 + #800080 + #800000 + #7fffd4 + #7fff00 + #7cfc00 + #7b68ee + #778899 + #778899 + #708090 + #708090 + #6b8e23 + #6a5acd + #696969 + #696969 + #66cdaa + #6495ed + #5f9ea0 + #556b2f + #4b0082 + #48d1cc + #483d8b + #4682b4 + #4169e1 + #40e0d0 + #3cb371 + #32cd32 + #2f4f4f + #2f4f4f + #2e8b57 + #228b22 + #20b2aa + #1e90ff + #191970 + #00ffff + #00ffff + #00ff7f + #00ff00 + #00fa9a + #00ced1 + #00bfff + #008b8b + #008080 + #008000 + #006400 + #0000ff + #0000cd + #00008b + #000080 + #000000 +