Space is a lightweight View subclass that may be used to create gaps between components in general purpose layouts.

Space 是一个轻量级的 View 子类,可用于在通用布局中的组件之间创建间隙。

public final class Space extends View {    /**     * {@inheritDoc}     */    public Space(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {        super(context, attrs, defStyleAttr, defStyleRes);        if (getVisibility() == VISIBLE) {            setVisibility(INVISIBLE);        }    }    /**     * {@inheritDoc}     */    public Space(Context context, AttributeSet attrs, int defStyleAttr) {        this(context, attrs, defStyleAttr, 0);    }    /**     * {@inheritDoc}     */    public Space(Context context, AttributeSet attrs) {        this(context, attrs, 0);    }    /**     * {@inheritDoc}     */    public Space(Context context) {        //noinspection NullableProblems        this(context, null);    }    /**     * Draw nothing.     *     * @param canvas an unused parameter.     */    @Override    public void draw(Canvas canvas) {    }    /**     * Compare to: {@link View#getDefaultSize(int, int)}     * If mode is AT_MOST, return the child size instead of the parent size     * (unless it is too big).     */    private static int getDefaultSize2(int size, int measureSpec) {        int result = size;        int specMode = MeasureSpec.getMode(measureSpec);        int specSize = MeasureSpec.getSize(measureSpec);        switch (specMode) {            case MeasureSpec.UNSPECIFIED:                result = size;                break;            case MeasureSpec.AT_MOST:                result = Math.min(size, specSize);                break;            case MeasureSpec.EXACTLY:                result = specSize;                break;        }        return result;    }    @Override    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {        setMeasuredDimension(                getDefaultSize2(getSuggestedMinimumWidth(), widthMeasureSpec),                getDefaultSize2(getSuggestedMinimumHeight(), heightMeasureSpec));    }}

draw方法没有任何声明,不需要进行渲染,可以进行控件之间的间隙。

参考:

https://blog.csdn.net/dajian35/article/details/74842681

更多相关文章

  1. Android(安卓)中使用Aspectj进行切面编程
  2. Android(安卓)ListView的item点击无响应的解决方法
  3. 利用drozer进行Android渗透测试
  4. Android之使用Android-query框架进行开发(二)
  5. Android中使用WakeLock保证后台操作的顺利进行
  6. Android(安卓)App调用跳转百度地图、高德地图、腾讯地图进行目的
  7. 利用drozer进行Android渗透测试
  8. [置顶] 我的Android进阶之旅------>android异步加载图片显示,并且
  9. android service 学习

随机推荐

  1. What Android(安卓)Is
  2. Android(安卓)Studio 各个依赖包存放目录
  3. android webview file标签点击弹出选择文
  4. android 6.0及以上危险权限的获取
  5. android事件分发机制一
  6. Mac 完全卸载 Android(安卓)Studio
  7. android 按钮置灰效果
  8. Android(安卓)Studio 使用技巧(6)
  9. android studio 配置Kotlin报错Error:Cau
  10. android host修改