diff --git a/app/src/main/java/com/wangjie/wheelview/WheelView.java b/app/src/main/java/com/wangjie/wheelview/WheelView.java index 00bcba7..22e8136 100644 --- a/app/src/main/java/com/wangjie/wheelview/WheelView.java +++ b/app/src/main/java/com/wangjie/wheelview/WheelView.java @@ -372,14 +372,20 @@ private void onSeletedCallBack() { public void setSeletion(int position) { final int p = position; + final int scrollY = p * itemHeight; selectedIndex = p + offset; - this.post(new Runnable() { + + WheelView.this.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { @Override - public void run() { - WheelView.this.smoothScrollTo(0, p * itemHeight); + public void onGlobalLayout() { + post(new Runnable() { + @Override + public void run() { + WheelView.this.smoothScrollTo(0, scrollY); + } + }); } }); - } public String getSeletedItem() {