V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
fashioncj
V2EX  ›  Android

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

  •  
  •   fashioncj · May 10, 2018 · 13607 views
    This topic created in 2908 days ago, the information mentioned may be changed or developed.

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

    图 1:

    1

    图 2:

    2


    需求如下:

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

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

    4 replies    2018-05-11 00:09:44 +08:00
    intret
        1
    intret  
       May 10, 2018 via Android
    讲真,如果你去系统地学习如何自定义 View,这个问题已经解决 90%。如果告诉你思路,结果 99%的工作还得你做。如果你会自定义 View 后,这个问题真的有思路了。矛盾吧?

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

    而绘制虚线,实线,矩形,改颜色,填充样式,绘制文字,这些真的不难。
    intret
        2
    intret  
       May 10, 2018   ❤️ 1
    装逼装了一半也不合适,给你提供一些帮助:

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


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

    https://github.com/intret/LoadingToggleButton
    fashioncj
        3
    fashioncj  
    OP
       May 11, 2018 via iPhone
    @intret 我在想的是是否存在一个 view 最适合这个需求。自定义 view 之前没有很系统的接触,我会仔细的看一下你给的东西。不知道可否告诉我解决这个需求重点是哪几个部分或者关键词。因为时间比较紧😂
    rb6221
        4
    rb6221  
       May 11, 2018
    有点像图片裁剪框的那种?
    拿到矩形在 N*N 中的相对位置 然后就好办了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5363 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 01:21 · PVG 09:21 · LAX 18:21 · JFK 21:21
    ♥ Do have faith in what you're doing.