zoukankan      html  css  js  c++  java
  • 可延长、缩短、拖动图形的画图软件

    参考了网上的很多代码,做的挺不错。就是不能拖动、延长、缩短···  
    所以我自己努力,将他们加上。
    现在分享给大家。
    ---------------------------------------------------------------------------------------------------------
    有两种实现方式。
    第一种实现方式:
    一个主view类(一个自定义view),在主view类中定义了统一的paint、bitmap、canvas,以及子类中需要用到的3个点downPoint,movePoint,upPoint。
    其他子类(画直线的view、画矩形的view····)都是继承这个主view类。
    在每次选择形状的时候:
    1、实例化一个view类
    2、将view类加入到当前activity
    画每一种形状都是在自己的view上进行,新加进来的view覆盖前面的view。
    每个子类中都有方法onTouchEvent()执行自己的操作:
     
    public boolean onTouchEvent(MotionEventevent) {[/align]
      
                       switch(event.getAction()){
     
      
                       caseMotionEvent.ACTION_DOWN:
     
      
                       caseMotionEvent.ACTION_MOVE:
     
      
                       caseMotionEvent.ACTION_UP:
     
                                                   }
     
               return true;
     
              }
    

      

    缺点:
    每次选择一个形状的时候都会调用view类中的
    bitmap = Bitmap.createBitmap(480, 700,Bitmap.Config.ARGB_8888); //设置位图的宽高
    canvas=new Canvas(bitmap);
    来重新创建一个bitmap,如果不停的选择,就会不停的新建bitmapBitmap创建过多之后就会报:内存溢出错误。
    具体的实现方法:
    关于画图的具体实现方式,比如:直线如何实现拖动?等等。我在代码中做了详细的注释,相信大家都能看懂。具体情况下载代码看吧。大家如果有什么不懂的,欢迎交流,我尽力解答。
    写在最后:
    这个小项目还有很多不完善的地方,欢迎大家提供宝贵意见,提出改进方法。
    如果你下载之将代码后完善的更好了,希望能发我一份。大家一起改进。谢谢了


    实现效果:

     源码:DrawDemo01.rar

    ---------------------------------------------------------------------------------------------------------

    第二种实现方式:


    比第一种实现方式好多了,整个项目看起来更系统。

    DrawDemo01的基础上添加了橡皮、清空、保存图片、查看图片的功能。

    具体实现方式源码注释写的很清楚了,大家有兴趣的自己下载看看。

    实现效果:

    源码:DrawDemo02.rar

  • 相关阅读:
    JS 字符串全部替换 ,replace (/ /g,'')
    C#中的延时加载Lazy(Of T)
    并发程序报错:ORA01007: variable not in select list(选择列表中没有变量) 以及相关动态指针写法
    【转】PLSQL中显式Cursor、隐式Cursor、动态Ref Cursor区别
    Shell 学习
    常用SQL和链接
    关于ra_customer_trx_lines_all 应收发票行
    translate和replace 的区别
    应收帐款汇总
    在Users里已经赋予了Responsibility,登陆以后无法看到新增加的Responsibility解决办法
  • 原文地址:https://www.cnblogs.com/tijing/p/2662236.html
Copyright © 2011-2022 走看看