您的位置:首页 > 其它

自定义ViewGroup 支持Margin

2017-01-11 17:09 316 查看
一般自定义VIewGroup步骤:

1.继承ViewGroup

2.重写onMeasure

3.重写onLayout

4.重写onDraw

此时,MarginLayoutParams cParams = (MarginLayoutParams) view1.getLayoutParams();会报异常

异常内容为:

java.lang.ClassCastException: android.view.ViewGroup$LayoutParams cannot be cast to android.view.ViewGroup$MarginLayoutParams


所以要支持Margin还有必须 重写generateLayoutParams方法

实例 :

@Override
public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs)
{
return new MarginLayoutParams(getContext(), attrs);
}


这样就可以支持Margin 进行操作了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐