zoukankan      html  css  js  c++  java
  • 自定义ViewGroup须知

    自定义ViewGroup须知:

     1.必须复写onMeasure和onLayout方法,根据容器的特性进行布局设计

       2.复写onMeasure方法必须处理父布局设置宽或高为wrap_content情况下,实际测量子View的宽高

       3.要得到子View的margin的值,要在自定义ViewGroup中复写generMarinLayoutParam的四个方法

       4.onLayout方法中设置的是子View的相对位置,控制两个参数:childLeft和childTop即可实现布局

       5.在布局中使用Gravity时要根据宽高进行换算 :

        ​    ​    宽度:parentPaddingleft + childLeft + childMarginLeft + childWidth+ childMaringRight+....+parentPaddingRight

                高度:parentPaddingTop +childTop + childMarginTop +childHeight+childMarginBottom+.....parentPaddingBottom

        ​    ​ 以上宽高位置变更childLeft和childTop

       6.onMeasure设定是总控件宽高,onLayout设置的是子View位置

  • 相关阅读:
    python运行时参数m的作用
    如何设置.net控件SplitContainer平均分配
    不用安装Oracle客户端
    视频聊天APP
    Hadoop框架
    Shell
    Linux
    java14带参的方法
    java13人机猜拳
    java12类的无参方法
  • 原文地址:https://www.cnblogs.com/ghhryr-lichl/p/6151228.html
Copyright © 2011-2022 走看看