我在自定义视图上使用OnClickListener,此代码用于放大点击视图:
@Override
public void onClick(View v)
{
if (!large)
{
this.getLayoutParams().height *= 2;
} else {
this.getLayoutParams().height /= 2;
}
large = !large;
}
但是当我点击视图时没有发生任何事情,视图不会改变大小?
答案 0 :(得分:2)
像这样改变你的方法..然后它会起作用..
@Override
public void onClick(View view)
{
LayoutParams params = view.getLayoutParams();
if (!large)
{
params.height = 2 * view.getHeight();
} else {
params.height = view.getHeight()/2;
}
large = !large;
view.setLayoutParams(params);
}
答案 1 :(得分:0)
您必须使自己的视图无效,以告知Android重绘它:
this.invalidate();