Android中如何实现画图-创新互联

这篇文章主要介绍“Android中如何实现画图”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Android中如何实现画图”文章能帮助大家解决问题。

我们提供的服务有:网站建设、成都网站设计、微信公众号开发、网站优化、网站认证、岱山ssl等。为上千企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的岱山网站制作公司

在Android 操作系统开发中,对于图形界面的操作时非常常见的一个基础操作。我们可以先通过本文介绍的有关Android画图的相关操作,来具体了解一下图形界面的操作技巧,以此提高我们对这一系统的认知程度。

  1. import java.io.InputStream;

  2. import android.app.Activity;

  3. import android.content.Context;

  4. import android.graphics.Bitmap;

  5. import android.graphics.BitmapFactory;

  6. import android.graphics.Canvas;

  7. import android.graphics.Color;

  8. import android.graphics.LinearGradient;

  9. import android.graphics.Paint;

  10. import android.graphics.PorterDuff;

  11. import android.graphics.PorterDuffXfermode;

  12. import android.graphics.Shader;

  13. import android.graphics.Typeface;

  14. import android.os.Bundle;

  15. import android.view.View;

  16. public class AlphaBitmap extends Activity {

  17. @Override

  18. protected void onCreate(Bundle savedInstanceState) {

  19. super.onCreate(savedInstanceState);

  20. setContentView(new SampleView(this));

  21. }

  22. private static class SampleView extends View {

  23. private Bitmap mBitmap;

  24. private Bitmap mBitmap2;

  25. private Bitmap mBitmap3;

  26. private Shader mShader;

  27. private static void drawIntoBitmap(Bitmap bm) {

  28. float x = bm.getWidth();

  29. float y = bm.getHeight();

  30. // 建一个有制定对象的画布

  31. Canvas c = new Canvas(bm);

  32. Paint p = new Paint();

  33. // 主要用来消除边缘吧从效果上看 好像false的话有毛边

  34. p.setAntiAlias(true);

  35. p.setAlpha(0x555555);//灰色

  36. c.drawCircle(x/2, y/2, x/2, p);

  37. p.setAlpha(0x0000ff);//蓝色

  38. p.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_OVER));

  39. // 下面是字体的相关设置

  40. p.setTextSize(20);

  41. String familyName = "宋体";

  42. Typeface font = Typeface.create(familyName,Typeface.ITALIC);

  43. p.setTypeface(font);

  44. p.setTextAlign(Paint.Align.CENTER);

  45. Paint.FontMetrics fm = p.getFontMetrics();

  46. c.drawText("我爱android", x/2, (y-fm.ascent)/2, p);

  47. }

  48. public SampleView(Context context) {

  49. super(context);

  50. setFocusable(true);

  51. // 得到图像的几种方法

  52. InputStream is = context.getResources().
    openRawResource(R.drawable.app_sample_code);

  53. mBitmap = BitmapFactory.decodeStream(is);

  54. //从一幅图像抽取色值变为新的图像,一般是画笔的颜色 同下面 
    p.setColor(Color.BLUE);

  55. mBitmapmBitmap2 = mBitmap.extractAlpha();

  56. mBitmap3 = Bitmap.createBitmap(200, 200, Bitmap.Config.ALPHA_8);

  57. drawIntoBitmap(mBitmap3);

  58. //一种渐变效果

  59. mShader = new LinearGradient(0, 0, 150, 70, new int[] {

  60. Color.RED, Color.GREEN, Color.BLUE },

  61. null, Shader.TileMode.MIRROR);

  62. }

  63. @Override protected void onDraw(Canvas canvas) {

  64. canvas.drawColor(Color.LTGRAY);

  65. Paint p = new Paint();

  66. float y = 10;

  67. p.setColor(Color.BLUE);

  68. canvas.drawBitmap(mBitmap, 10, y, p);

  69. y += mBitmap.getHeight() + 10;

  70. canvas.drawBitmap(mBitmap2, 10, y, p);

  71. y += mBitmap2.getHeight() + 10;

  72. p.setShader(mShader);

  73. canvas.drawBitmap(mBitmap3, 10, y, p);

  74. }

  75. }

  76. }

关于“Android中如何实现画图”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注创新互联行业资讯频道,小编每天都会为大家更新不同的知识点。


分享名称:Android中如何实现画图-创新互联
文章地址:http://pwwzsj.com/article/dicpdh.html