【发布时间】:2012-10-26 10:52:46
【问题描述】:
我将 320*50 视图扩展到全屏时遇到了问题。
如果我直接展开它,它可以工作,但动作非常突然,我认为不是一个好的用户体验。所以我先隐藏视图,然后展开它,两秒钟后,再次显示视图。
TextView.setVisibility(VIEW.INVISIBLE);
ViewGroup.LayoutParams lp = TextView.getLayoutParams();
lp.width = ViewGroup.LayoutParams.FILL_PARENT;
lp.height = ViewGroup.LayoutParams.FILL_PARENT;
//after two seconds
handler.postDelay(new Show(),2000);
class Show implements Runnable{
@Override
public void run(){
TextView.setVisibility(VIEW.VISIBLE);
}
}
所以我留了两秒钟让应用程序展开视图。然后两秒钟后视图将再次显示。我预计视图在显示时会扩展到全屏。但实际上,并没有。视图在显示后而不是在它隐藏的两秒钟内执行展开操作。
【问题讨论】:
-
是的,这是一个很好的解决方法。但是有没有更直接的解决方案?
-
@wayne_bai :我认为没有比使用动画更好的方法了。它们实施起来并不复杂。
-
发布 2 秒等待部分,我怀疑你没有在主线程上松开手
-
@njzk2:我只使用 handler.postDelay(runnable,time)。我已经更新了代码。
标签: android view layoutparams