0
我抵消上ACTION_MOVE的ImageView的,通过调用offsetTopandBottom(INT distanceY)和每次调用后也无效。拖动视图显示差事行为
但框架是可见的,而拖延升级Froyo和姜饼的看法。任何建议?
/**
* Called on ACTION_MOVE
**/
private void offsetView(View view, int distanceY) {
view.offsetTopAndBottom(distanceY);
view.invalidate();
view.invalidateDrawable(view.getBackground());
}
我也尝试发布每个offsetCall上,但它没有奏效。
post(new Runnable() {
@Override
public void run() {
view.offsetTopAndBottom(distanceY);
view.invalidateDrawable(getBackground());
view.invalidate();
}
});
我应该做一个postDelayed为重绘,或者我应该张贴延迟offsetTopAndBottom呼叫(INT偏移)?
解决:
执行绘图和分别为10ms(或一些其它时间< 60ms的)隔开偏移呼叫。
view.offsetTopAndBottom(distanceY);
postDelayed(new Runnable() {
@Override
public void run() {
view.invalidateDrawable(getBackground());
view.invalidate();
}
}, 10);
感谢格雷格:)
上面的问题只发生在 = API 11,使用setLayerType()方法。此外,我已经在应用程序级别定义了android:hardwareAccelerated =“true”。 –
himanshurb
升级Froyo占市场的1.6%,你真的想花时间试图弄明白? –
它也发生在姜饼上。请帮忙。如果我们弄清楚什么,它会更好。 – himanshurb