【发布时间】:2013-10-08 13:36:53
【问题描述】:
我有一个带有 LinearLayout 的 SurfaceView,如果您单击 SurfaceView,它会隐藏或显示。 问题是 SurfaceView 没有刷新,所以如果 setVisibility(View.VISIBLE) 实际上不起作用。
这是我正在使用的代码:
sv.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v)
{
Log.d("MainActivity-onCreate-onClick-buttons",
buttonsVisibility.toString());
if (buttonsVisibility)
{
linearLayoutButtons.setVisibility(View.INVISIBLE);
buttonsVisibility = false;
} else
{
linearLayoutButtons.setVisibility(View.VISIBLE);
buttonsVisibility = true;
}
}
});
默认buttonVisibility设置为false,我第一次点击视图时实际上是这样,所以逻辑是一致的,唯一的问题是setVisibility似乎没有效果。只有当我打开/关闭屏幕时,我才能看到布局正确显示然后正常工作。为什么我需要关闭屏幕才能刷新 UI? setVisibility后不应该自动刷新吗?
非常感谢
【问题讨论】:
标签: android-layout refresh visibility