0
在我的應用程序中,我有一個小型的SurfaceView顯示相機預覽。這個surfaceView放在一個放在ScrollView中的FrameLayout中,與其他組件(比如按鈕,文本視圖等)一起放置。問題是,當我滾動屏幕時,surfaceView留下一個黑洞,並且這個黑洞只在屏幕重繪時填充,所以,我想重畫每個滾動步驟的屏幕(是如果沒有其他辦法,我願意支付業績折讓)。有人有什麼想法?當屏幕滾動時檢測?
在我的應用程序中,我有一個小型的SurfaceView顯示相機預覽。這個surfaceView放在一個放在ScrollView中的FrameLayout中,與其他組件(比如按鈕,文本視圖等)一起放置。問題是,當我滾動屏幕時,surfaceView留下一個黑洞,並且這個黑洞只在屏幕重繪時填充,所以,我想重畫每個滾動步驟的屏幕(是如果沒有其他辦法,我願意支付業績折讓)。有人有什麼想法?當屏幕滾動時檢測?
擴展您的滾動視圖,並把有
private OnScrollListener onScrollListener;
public interface OnScrollListener {
public void onScroll();
}
@Override
protected void onScrollChanged(int l, int t, int oldl, int oldt) {
if (onScrollListener != null) {
onScrollListener.onScroll();
}
super.onScrollChanged(l, t, oldl, oldt);
}
public void setOnScrollListener(OnScrollListener lst) {
this.onScrollListener = lst;
}
,那麼你可以聽滾動
scrollRoot.setOnScrollListener(new OnScrollListener() {
@Override
public void onScroll() {
//do something
}
});