请教一个自定义视图组件的实现思路

2018-05-10 22:22:26 +08:00
 fashioncj

最近遇到一个需求,先上图。

图 1:

图 2:


需求如下:

  1. 根据服务器参数显示 nn 的大框,标注 1,2,3,...,NxN,大框在接收双指缩小的时候显示 22 或 3*3 的虚线格子。
  2. 拖拽一个矩形控件到该大框中,双击该控件自动放大到之前覆盖的虚线格子的大小并覆盖,例如图 1 的 4k 演示双击后变成图 2 的 4k 演示。
  3. 可以获取矩形控件在大框中的相对位置

希望能够获取一些思路和关键词,或者合适的开源组件~ 谢谢~

9196 次点击
所在节点    Android
4 条回复
intret
2018-05-10 23:40:21 +08:00
讲真,如果你去系统地学习如何自定义 View,这个问题已经解决 90%。如果告诉你思路,结果 99%的工作还得你做。如果你会自定义 View 后,这个问题真的有思路了。矛盾吧?

自定义 View 就是在自定义 View 类中定义很多的类属性描述 View 的绘制状态,动画状态。提供交互接口更新这个类的属性。

而绘制虚线,实线,矩形,改颜色,填充样式,绘制文字,这些真的不难。
intret
2018-05-10 23:48:35 +08:00
装逼装了一半也不合适,给你提供一些帮助:

http://www.gcssloop.com/customview/CustomViewIndex/
http://hencoder.com/


这个我的自定义 View 作品,希望对你有帮助。

https://github.com/intret/LoadingToggleButton
fashioncj
2018-05-11 00:03:55 +08:00
@intret 我在想的是是否存在一个 view 最适合这个需求。自定义 view 之前没有很系统的接触,我会仔细的看一下你给的东西。不知道可否告诉我解决这个需求重点是哪几个部分或者关键词。因为时间比较紧😂
janus77
2018-05-11 00:09:44 +08:00
有点像图片裁剪框的那种?
拿到矩形在 N*N 中的相对位置 然后就好办了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/453909

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX