ICS中不确定进度栏跳跃的最佳解决方法是什么?

Jan*_*lho 6 performance android android-layout

我有一个自定义布局,包括主ListView上方的进度条.当列表刷新时,我将进度条设置为不确定.在JellyBean及以上版本中,这很有效.但是,在IceCream Sandwich中,当设置为不确定时,它会跳过几个像素,足以隐藏ActionBar下的部分内容.

解决这种行为的最佳方法是什么?

有两个具有不同marginTop值的进度条,并通过在确定模式和不确定模式之间切换时更改视图可见性来在它们之间切换?更改模式时更改进度条的LayoutParams?或者其他一些方式?

在这两种情况下,我都可以进行选择性处理,这样我就可以在第一种方式中为不同的API版本设置不同的布局,而在第二种方法中,如果SDK_INT值小于16,则只更改LayoutParams.

有没有更好的方法来解决这种行为?如果没有,哪一个会"更好"?这里更好的可能是资源使用和/或可维护性较低,但我也对它们的优缺点感兴趣.

Chl*_*loe 0

考虑将进度条最大值设置为刷新超时。所以如果你设置超时为60s,就用一个计数器每秒更新一次进度条,直到超时。那么它将永远是一个决定性的进度条。