自定义view

原创 2015年11月18日 20:23:05

参考博客http://blog.csdn.net/pi9nc/article/details/18764863

自定义view实现如下效果
衣服图与设计图叠加,显示在列表中
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec,heightMeasureSpec);
int widthSize = MeasureSpec.getSize(widthMeasureSpec);
int widthMode = MeasureSpec.getMode(widthMeasureSpec);
int heightSize = MeasureSpec.getSize(heightMeasureSpec);
int heightMode = MeasureSpec.getMode(heightMeasureSpec);

    if (widthMode == MeasureSpec.EXACTLY && heightMode == MeasureSpec.AT_MOST){
        heightSize = widthSize *5 / 4;
        setMeasuredDimension(widthSize,heightSize);
    }else if (widthMode == MeasureSpec.AT_MOST && heightMode == MeasureSpec.EXACTLY){
        widthSize = heightSize *4 /5;
        setMeasuredDimension(widthSize,heightSize);
    }else{
        widthSize = getMeasuredWidth();
        heightSize = widthSize *5 / 4;
    }

    setDesignPosition(widthSize,heightSize,type);
}

public void setDesignPosition(int w,int h,int type){
    ViewGroup.LayoutParams params = simpleDraweeView_clothes.getLayoutParams();
    params.width = w;
    params.height = h;
    simpleDraweeView_clothes.setLayoutParams(params);

    if(type == CommonConstants.TShit){
        //T恤
        LayoutParams param = (LayoutParams) simpleDraweeView_design.getLayoutParams();
        int l = (int) ((w - 0.371 * w)/2);
        int t = (int) ((h - 0.414 * h)/2);
        int width = (int) (0.371 * w);
        int height = (int) (0.414 * h);

        param.setMargins(l, t, 0, 0);
        param.height = height;
        param.width = width;
        simpleDraweeView_design.setLayoutParams(param);
    }

}

相关文章推荐

自定义view(音量条)

  • 2017年11月09日 15:14
  • 19.83MB
  • 下载

[动手学android] 自定义View-1

自己动手写代码是学习编程的最好方式。接下来我通过一个小例子来学习如何创建简单的自定义view。这次的例子是组合view。需要实现的是类似名片的view,如下图所示。...

Android自定义View

  • 2016年01月05日 17:54
  • 1.26MB
  • 下载

【Android自定义View实战】之仿百度加载动画,一种优雅的Loading方式

【Android自定义View实战】之仿百度加载动画,一种优雅的Loading方式 无意中看到了百度的加载动画,看起来非常优雅,打算亲手造一个。 仿百度加载动画的重要思路:当第一遍执行完毕后就让...

Android自定义View(一) -源码

  • 2016年08月26日 13:32
  • 34.14MB
  • 下载

Android自定义View,ViewGroup(一)的一些原理与细节,RecyclerView版侧滑删除

google工程师提供了很多原生控件,原生控件都是继承View或ViewGroup,但是未必能满足工作中业务的需求,有些同学认为,现在技术博客上各种需求的开源控件都有,没有必要去自己定义,但是即使再好...

自定义View(CustomView04)

  • 2017年08月04日 14:31
  • 21.58MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:自定义view
举报原因:
原因补充:

(最多只允许输入30个字)