【问题标题】:Add draggable shape on a picture in Android在Android中的图片上添加可拖动形状
【发布时间】:2011-08-15 08:20:39
【问题描述】:

谁能解释我如何在图像(ImageView)上添加形状(例如矩形或箭头)?添加后,形状将需要可拖动到图像中的任何位置。最后需要保存编辑过的图像(上面有形状)。

【问题讨论】:

    标签: android image drag


    【解决方案1】:

    你真正需要什么信息?

    这可以是一些步骤:

    也许创建一个新对象来处理这个:

    • 创建一个新类并从 ImageView 扩展或为此使用 LayerDrawable。
    • 为主背景图像/位图编写 setter/getter。
    • 添加您自己的矢量形状(创建具有可定义颜色、厚度的新类...或对其进行硬编码)
    • 在 onDraw-Methods 中完成所有绘图
    • 实现 onTouch 界面来处理您的选择和拖动。
    • 创建新方法(渲染为 jpeg/png/..)以保存生成的图像

    【讨论】:

      【解决方案2】:
      • 从与您的ImageView 完全重叠的视图创建自定义视图。此视图将具有透明背景并包含拖动视图。最初将可见性设置为不可见。
      • 在自定义视图类中覆盖 onTouch 事件,您可以在其中更新拖动视图边距。
      • 保存时,获取父布局的绘图缓存(包含ImageView 和自定义视图)并根据需要使用。

      示例 xml 代码:

      必须使用 rel.getDrawingCache() 抓取其绘图缓存的相对布局父级

      <RelativeLayout .......>
              <ImageView ......./>
              <CustomView ......./>
      </RelativeLayout>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-09-30
        • 1970-01-01
        • 2020-08-06
        • 2015-08-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多