让我们以简单的CustomView
为例
public class MyView extends View {
public MyView(Context context) {
super(context);
super.setBackgroundColor(Color.RED);
}
public MyView(Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawRect(20,20,220,220,new Paint());
}
}
在我的MainActivity
中我把我的View
加到一个LinearLayout
中
setContentView(R.layout.activity_main);
LinearLayout linearLayout = findViewById(R.id.linearlayout);
linearLayout.addView(new MyView(this));
linearLayout.addView(new MyView(this));
正如你可以看到改变到背景颜色,第一个view
MyView占用了所有的空间
我希望我的两个views
只占用黑色空间。wrap_content
1条答案
按热度按时间xzv2uavs1#
线性布局= findViewById(R.标识线性布局); MyView mView =新建MyView(此);(新视图组.布局参数(视图组.布局参数.匹配父视图,视图组.布局参数.匹配父视图));添加视图(mView);